Products | Support | Email a link to this topic. | Send comments on this topic. | Back to Introduction - All Topics | Help Version 19.0.12.8
|
Leadtools.MedicalViewer Namespace > MedicalViewer Class > MedicalViewer Constructor : MedicalViewer Constructor() |
Create the control and add some image
Imports Leadtools Imports Leadtools.Codecs Imports Leadtools.MedicalViewer <TestMethod()> _ Public Sub MedicalViewerPropertiesExample() Dim form As MainForm2 = New MainForm2() form.ShowDialog() End Sub ' MainForm1 will be the owner of the medical viewer control. Private Class MainForm2 : Inherits Form Public _medicalViewer As MedicalViewer Private Sub MedicalViewerForm_SizeChanged(ByVal sender As Object, ByVal e As EventArgs) _medicalViewer.Size = New Size(Me.ClientRectangle.Right, Me.ClientRectangle.Bottom) End Sub Public Sub New() Dim _codecs As RasterCodecs = New RasterCodecs() Dim _image As RasterImage ' Create the medical viewer and adjust some properties. _medicalViewer = New MedicalViewer() _medicalViewer.Rows = 2 _medicalViewer.Columns = 2 _medicalViewer.Location = New Point(0, 0) _medicalViewer.Size = New Size(Me.ClientRectangle.Right, Me.ClientRectangle.Bottom) _medicalViewer.ResizeBoth = System.Windows.Forms.Cursors.SizeAll _medicalViewer.ResizeHorizontalCursor = System.Windows.Forms.Cursors.SizeWE _medicalViewer.ResizeVerticalCursor = System.Windows.Forms.Cursors.SizeNS _medicalViewer.SplitterColor = Color.FromArgb(128, 128, 128) _medicalViewer.SplitterStyle = MedicalViewerSplitterStyle.Thick _medicalViewer.UseExtraSplitters = False _medicalViewer.VisibleRow = 0 _medicalViewer.CellMaintenance = True _medicalViewer.CustomSplitterColor = True _medicalViewer.AutoScroll = True ' Load an image and then add it to the control. _image = _codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "xa.dcm")) Dim cell As MedicalViewerMultiCell = New MedicalViewerMultiCell(_image, True, 1, 1) cell.ActiveBorderColor = Color.FromArgb(0, 0, 255) cell.ActiveSubCellBorderColor = Color.FromArgb(0, 255, 0) cell.AnnotationDefaultCursor = System.Windows.Forms.Cursors.Cross cell.AnnotationMoveCursor = System.Windows.Forms.Cursors.SizeNWSE cell.AnnotationSelectCursor = System.Windows.Forms.Cursors.SizeAll cell.CellBackColor = Color.FromArgb(100, 100, 255) cell.BorderStyle = MedicalViewerBorderStyle.DashDotDot cell.BackColor = Color.FromArgb(70, 70, 180) cell.MeasurementUnit = MedicalViewerMeasurementUnit.Inches cell.NonActiveBorderColor = Color.FromArgb(0, 0, 0) cell.PaintingMethod = MedicalViewerPaintingMethod.Normal cell.RegionDefaultCursor = System.Windows.Forms.Cursors.Cross cell.RulerInColor = Color.FromArgb(255, 255, 0) cell.RulerOutColor = Color.FromArgb(255, 0, 0) cell.RulerStyle = MedicalViewerRulerStyle.Bordered cell.ShowCellScroll = False cell.ShowFreezeText = True cell.TextColor = Color.FromArgb(255, 255, 0) cell.TextQuality = MedicalViewerTextQuality.Draft cell.TextShadowColor = Color.FromArgb(0, 0, 0) cell.OverlayTextSize = 0 cell.RegionBorderColor1 = Color.FromArgb(0, 0, 255) cell.RegionBorderColor2 = Color.FromArgb(255, 255, 255) cell.InteractiveInterpolation = True ' add some actions that will be used to change the properties of the images inside the control. cell.AddAction(MedicalViewerActionType.WindowLevel) cell.AddAction(MedicalViewerActionType.Alpha) cell.AddAction(MedicalViewerActionType.Scale) cell.AddAction(MedicalViewerActionType.Offset) cell.AddAction(MedicalViewerActionType.Stack) ' assign the added actions to a mouse button, meaning that when the user clicks and drags the mouse button, the associated action will be activated. cell.SetAction(MedicalViewerActionType.WindowLevel, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active) cell.SetAction(MedicalViewerActionType.Offset, MedicalViewerMouseButtons.Right, MedicalViewerActionFlags.Active) cell.SetAction(MedicalViewerActionType.Scale, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active) cell.SetAction(MedicalViewerActionType.Stack, MedicalViewerMouseButtons.Wheel, MedicalViewerActionFlags.Active) ' assign the added actions to keyboard keys that will work like the mouse. Dim medicalKeys As MedicalViewerKeys = New MedicalViewerKeys() medicalKeys.MouseDown = Keys.Down medicalKeys.MouseUp = Keys.Up medicalKeys.MouseLeft = Keys.Left medicalKeys.MouseRight = Keys.Right cell.SetActionKeys(MedicalViewerActionType.Offset, medicalKeys) medicalKeys.Modifiers = MedicalViewerModifiers.Ctrl cell.SetActionKeys(MedicalViewerActionType.WindowLevel, medicalKeys) medicalKeys.MouseDown = Keys.PageDown medicalKeys.MouseUp = Keys.PageUp cell.SetActionKeys(MedicalViewerActionType.Stack, medicalKeys) medicalKeys.MouseDown = Keys.Subtract medicalKeys.MouseUp = Keys.Add cell.SetActionKeys(MedicalViewerActionType.Scale, medicalKeys) ' Go through all the built in actions and remove the actions that haven't been assigned to a mouse button, or a key. Dim index As Integer = 1 Do While index < 22 Dim actionType As MedicalViewerActionType = CType(index, MedicalViewerActionType) If cell.IsActionAdded(actionType) Then Dim mouseButton As MedicalViewerMouseButtons = cell.GetActionButton(actionType) If mouseButton = MedicalViewerMouseButtons.None Then Dim mykeys As MedicalViewerKeys = cell.GetActionKeys(actionType) If mykeys.MouseLeft = Keys.None AndAlso mykeys.MouseUp = Keys.None AndAlso mykeys.MouseDown = Keys.None AndAlso mykeys.MouseRight = Keys.None Then cell.RemoveAction(actionType) End If End If End If index += 1 Loop ' Makes the window level apply the effect on all selected cells at the same time. Dim flags As MedicalViewerActionFlags = cell.GetActionFlags(MedicalViewerActionType.WindowLevel) flags = flags Or MedicalViewerActionFlags.Selected cell.SetAction(MedicalViewerActionType.WindowLevel, MedicalViewerMouseButtons.Left, flags) ' Load an image and then add it to the control. _image = _codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "image2.cmp")) _medicalViewer.Cells.Add(cell) ' adjust some properties of the cell and add some tags. cell.SetTag(2, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.UserData, "EX. ID 230-36-5448") cell.SetTag(4, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.Frame) cell.SetTag(6, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.Scale) cell.SetTag(2, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.WindowLevelData) cell.SetTag(1, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.FieldOfView) cell.SetTag(1, MedicalViewerTagAlignment.TopRight, MedicalViewerTagType.UserData, "Good, Guy") cell.SetTag(2, MedicalViewerTagAlignment.TopRight, MedicalViewerTagType.UserData, "PID 125-98-445") cell.SetTag(3, MedicalViewerTagAlignment.TopRight, MedicalViewerTagType.UserData, "DOB 08/02/1929") cell.SetTag(5, MedicalViewerTagAlignment.TopRight, MedicalViewerTagType.UserData, "03/16/1999") cell.SetTag(0, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.RulerUnit) cell.Rows = 2 cell.Columns = 2 cell.Frozen = False cell.DisplayRulers = MedicalViewerRulers.Both cell.ApplyOnIndividualSubCell = False cell.ApplyActionOnMove = True cell.FitImageToCell = True cell.Selected = True cell.ShowTags = True ' Load an image and then add it to the control. _image = _codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "image2.cmp")) Dim cell1 As MedicalViewerMultiCell = New MedicalViewerMultiCell() cell1.Image = _image cell1.Rows = 2 cell1.Columns = 2 cell1.Frozen = False cell1.DisplayRulers = MedicalViewerRulers.Both cell1.ApplyOnIndividualSubCell = False cell1.ApplyActionOnMove = True cell1.FitImageToCell = True cell1.Selected = True cell1.ShowTags = True _medicalViewer.Cells.Add(cell1) cell1.CellBackColor = Color.FromArgb(100, 100, 255) cell1.BorderStyle = MedicalViewerBorderStyle.DashDotDot cell1.BackColor = Color.FromArgb(70, 70, 180) cell1.MeasurementUnit = MedicalViewerMeasurementUnit.Inches cell1.NonActiveBorderColor = Color.FromArgb(0, 0, 0) cell1.PaintingMethod = MedicalViewerPaintingMethod.Normal cell1.RegionDefaultCursor = System.Windows.Forms.Cursors.Cross cell1.RulerInColor = Color.FromArgb(255, 255, 0) cell1.RulerOutColor = Color.FromArgb(255, 0, 0) cell1.RulerStyle = MedicalViewerRulerStyle.Bordered cell1.ShowCellScroll = False cell1.ShowFreezeText = True cell1.TextColor = Color.FromArgb(255, 255, 0) cell1.TextQuality = MedicalViewerTextQuality.Draft cell1.TextShadowColor = Color.FromArgb(0, 0, 0) cell1.OverlayTextSize = 0 cell1.RegionBorderColor1 = Color.FromArgb(0, 0, 255) cell1.RegionBorderColor2 = Color.FromArgb(255, 255, 255) cell1.InteractiveInterpolation = True ' add some actions that will be used to change the properties of the images inside the control. cell1.AddAction(MedicalViewerActionType.WindowLevel) cell1.AddAction(MedicalViewerActionType.Alpha) cell1.AddAction(MedicalViewerActionType.Scale) cell1.AddAction(MedicalViewerActionType.Offset) cell1.AddAction(MedicalViewerActionType.Stack) ' assign the added actions to a mouse button, meaning that when the user clicks and drags the mouse button, the associated action will be activated. cell1.SetAction(MedicalViewerActionType.WindowLevel, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active) cell1.SetAction(MedicalViewerActionType.Offset, MedicalViewerMouseButtons.Right, MedicalViewerActionFlags.Active) cell1.SetAction(MedicalViewerActionType.Scale, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active) cell1.SetAction(MedicalViewerActionType.Stack, MedicalViewerMouseButtons.Wheel, MedicalViewerActionFlags.Active) ' assign the added actions to keyboard keys that will work like the mouse. medicalKeys = New MedicalViewerKeys() medicalKeys.MouseDown = Keys.Down medicalKeys.MouseUp = Keys.Up medicalKeys.MouseLeft = Keys.Left medicalKeys.MouseRight = Keys.Right cell1.SetActionKeys(MedicalViewerActionType.Offset, medicalKeys) medicalKeys.Modifiers = MedicalViewerModifiers.Ctrl cell1.SetActionKeys(MedicalViewerActionType.WindowLevel, medicalKeys) medicalKeys.MouseDown = Keys.PageDown medicalKeys.MouseUp = Keys.PageUp cell1.SetActionKeys(MedicalViewerActionType.Stack, medicalKeys) medicalKeys.MouseDown = Keys.Subtract medicalKeys.MouseUp = Keys.Add cell1.SetActionKeys(MedicalViewerActionType.Scale, medicalKeys) ' adjust some properties to the cell1 and add some tags. cell1.SetTag(2, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.UserData, "EX. ID 230-36-5448") cell1.SetTag(4, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.Frame) cell1.SetTag(6, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.Scale) cell1.SetTag(2, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.WindowLevelData) cell1.SetTag(1, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.FieldOfView) cell1.SetTag(1, MedicalViewerTagAlignment.TopRight, MedicalViewerTagType.UserData, "Good, Guy") cell1.SetTag(2, MedicalViewerTagAlignment.TopRight, MedicalViewerTagType.UserData, "PID 125-98-445") cell1.SetTag(3, MedicalViewerTagAlignment.TopRight, MedicalViewerTagType.UserData, "DOB 08/02/1929") cell1.SetTag(5, MedicalViewerTagAlignment.TopRight, MedicalViewerTagType.UserData, "03/16/1999") cell1.SetTag(0, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.RulerUnit) Controls.Add(_medicalViewer) _medicalViewer.Dock = DockStyle.Fill End Sub End Class Public NotInheritable Class LEAD_VARS Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" End Class
using Leadtools; using Leadtools.Codecs; using Leadtools.MedicalViewer; [TestMethod] public void MedicalViewerPropertiesExample() { MainForm2 form = new MainForm2(); form.ShowDialog(); } // MainForm1 will be the owner of the medical viewer control. class MainForm2 : Form { public MedicalViewer _medicalViewer; void MedicalViewerForm_SizeChanged(object sender, EventArgs e) { _medicalViewer.Size = new Size(this.ClientRectangle.Right, this.ClientRectangle.Bottom); } public MainForm2() { RasterCodecs _codecs = new RasterCodecs(); RasterImage _image; // Create the medical viewer and adjust some properties. _medicalViewer = new MedicalViewer(); _medicalViewer.Rows = 2; _medicalViewer.Columns = 2; _medicalViewer.Location = new Point(0, 0); _medicalViewer.Size = new Size(this.ClientRectangle.Right, this.ClientRectangle.Bottom); _medicalViewer.ResizeBoth = System.Windows.Forms.Cursors.SizeAll; _medicalViewer.ResizeHorizontalCursor = System.Windows.Forms.Cursors.SizeWE; _medicalViewer.ResizeVerticalCursor = System.Windows.Forms.Cursors.SizeNS; _medicalViewer.SplitterColor = Color.FromArgb(128, 128, 128); _medicalViewer.SplitterStyle = MedicalViewerSplitterStyle.Thick; _medicalViewer.UseExtraSplitters = false; _medicalViewer.VisibleRow = 0; _medicalViewer.CellMaintenance = true; _medicalViewer.CustomSplitterColor = true; _medicalViewer.AutoScroll = true; // Load an image and then add it to the control. _image = _codecs.Load(Path.Combine(LEAD_VARS.ImagesDir,"xa.dcm")); MedicalViewerMultiCell cell = new MedicalViewerMultiCell(_image, true, 1, 1); cell.ActiveBorderColor = Color.FromArgb(0, 0, 255); cell.ActiveSubCellBorderColor = Color.FromArgb(0, 255, 0); cell.AnnotationDefaultCursor = System.Windows.Forms.Cursors.Cross; cell.AnnotationMoveCursor = System.Windows.Forms.Cursors.SizeNWSE; cell.AnnotationSelectCursor = System.Windows.Forms.Cursors.SizeAll; cell.CellBackColor = Color.FromArgb(100, 100, 255); cell.BorderStyle = MedicalViewerBorderStyle.DashDotDot; cell.BackColor = Color.FromArgb(70, 70, 180); cell.MeasurementUnit = MedicalViewerMeasurementUnit.Inches; cell.NonActiveBorderColor = Color.FromArgb(0, 0, 0); cell.PaintingMethod = MedicalViewerPaintingMethod.Normal; cell.RegionDefaultCursor = System.Windows.Forms.Cursors.Cross; cell.RulerInColor = Color.FromArgb(255, 255, 0); cell.RulerOutColor = Color.FromArgb(255, 0, 0); cell.RulerStyle = MedicalViewerRulerStyle.Bordered; cell.ShowCellScroll = false; cell.ShowFreezeText = true; cell.TextColor = Color.FromArgb(255, 255, 0); cell.TextQuality = MedicalViewerTextQuality.Draft; cell.TextShadowColor = Color.FromArgb(0, 0, 0); cell.OverlayTextSize = 0; cell.RegionBorderColor1 = Color.FromArgb(0, 0, 255); cell.RegionBorderColor2 = Color.FromArgb(255, 255, 255); cell.InteractiveInterpolation = true; // add some actions that will be used to change the properties of the images inside the control. cell.AddAction(MedicalViewerActionType.WindowLevel); cell.AddAction(MedicalViewerActionType.Alpha); cell.AddAction(MedicalViewerActionType.Scale); cell.AddAction(MedicalViewerActionType.Offset); cell.AddAction(MedicalViewerActionType.Stack); // assign the added actions to a mouse button, meaning that when the user clicks and drags the mouse button, the associated action will be activated. cell.SetAction(MedicalViewerActionType.WindowLevel, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active); cell.SetAction(MedicalViewerActionType.Offset, MedicalViewerMouseButtons.Right, MedicalViewerActionFlags.Active); cell.SetAction(MedicalViewerActionType.Scale, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active); cell.SetAction(MedicalViewerActionType.Stack, MedicalViewerMouseButtons.Wheel, MedicalViewerActionFlags.Active); // assign the added actions to a keyboard keys that will work like the mouse. MedicalViewerKeys medicalKeys = new MedicalViewerKeys(); medicalKeys.MouseDown = Keys.Down; medicalKeys.MouseUp = Keys.Up; medicalKeys.MouseLeft = Keys.Left; medicalKeys.MouseRight = Keys.Right; cell.SetActionKeys(MedicalViewerActionType.Offset, medicalKeys); medicalKeys.Modifiers = MedicalViewerModifiers.Ctrl; cell.SetActionKeys(MedicalViewerActionType.WindowLevel, medicalKeys); medicalKeys.MouseDown = Keys.PageDown; medicalKeys.MouseUp = Keys.PageUp; cell.SetActionKeys(MedicalViewerActionType.Stack, medicalKeys); medicalKeys.MouseDown = Keys.Subtract; medicalKeys.MouseUp = Keys.Add; cell.SetActionKeys(MedicalViewerActionType.Scale, medicalKeys); // Go through all the built in actions and remove the actions that have not been assigned to a mouse button, or a key. int index = 1; for (; index < 22; index++) { MedicalViewerActionType actionType = (MedicalViewerActionType)index; if (cell.IsActionAdded(actionType)) { MedicalViewerMouseButtons mouseButton = cell.GetActionButton(actionType); if (mouseButton == MedicalViewerMouseButtons.None) { MedicalViewerKeys keys = cell.GetActionKeys(actionType); if (keys.MouseLeft == Keys.None && keys.MouseUp == Keys.None && keys.MouseDown == Keys.None && keys.MouseRight == Keys.None) cell.RemoveAction(actionType); } } } // Makes the window level applies the effect on all selected cells at the same time. MedicalViewerActionFlags flags = cell.GetActionFlags(MedicalViewerActionType.WindowLevel); flags |= MedicalViewerActionFlags.Selected; cell.SetAction(MedicalViewerActionType.WindowLevel, MedicalViewerMouseButtons.Left, flags); // Load an image and then add it to the control. _image = _codecs.Load(Path.Combine(LEAD_VARS.ImagesDir,"image2.cmp")); _medicalViewer.Cells.Add(cell); // adjust some properties of the cell and add some tags. cell.SetTag(2, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.UserData, "EX. ID 230-36-5448"); cell.SetTag(4, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.Frame); cell.SetTag(6, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.Scale); cell.SetTag(2, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.WindowLevelData); cell.SetTag(1, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.FieldOfView); cell.SetTag(1, MedicalViewerTagAlignment.TopRight, MedicalViewerTagType.UserData, "Good, Guy"); cell.SetTag(2, MedicalViewerTagAlignment.TopRight, MedicalViewerTagType.UserData, "PID 125-98-445"); cell.SetTag(3, MedicalViewerTagAlignment.TopRight, MedicalViewerTagType.UserData, "DOB 08/02/1929"); cell.SetTag(5, MedicalViewerTagAlignment.TopRight, MedicalViewerTagType.UserData, "03/16/1999"); cell.SetTag(0, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.RulerUnit); cell.Rows = 2; cell.Columns = 2; cell.Frozen = false; cell.DisplayRulers = MedicalViewerRulers.Both; cell.ApplyOnIndividualSubCell = false; cell.ApplyActionOnMove = true; cell.FitImageToCell = true; cell.Selected = true; cell.ShowTags = true; // Load an image and then add it to the control. _image = _codecs.Load(Path.Combine(LEAD_VARS.ImagesDir,"image2.cmp")); MedicalViewerMultiCell cell1 = new MedicalViewerMultiCell(); cell1.Image = _image; cell1.Rows = 2; cell1.Columns = 2; cell1.Frozen = false; cell1.DisplayRulers = MedicalViewerRulers.Both; cell1.ApplyOnIndividualSubCell = false; cell1.ApplyActionOnMove = true; cell1.FitImageToCell = true; cell1.Selected = true; cell1.ShowTags = true; _medicalViewer.Cells.Add(cell1); cell1.CellBackColor = Color.FromArgb(100, 100, 255); cell1.BorderStyle = MedicalViewerBorderStyle.DashDotDot; cell1.BackColor = Color.FromArgb(70, 70, 180); cell1.MeasurementUnit = MedicalViewerMeasurementUnit.Inches; cell1.NonActiveBorderColor = Color.FromArgb(0, 0, 0); cell1.PaintingMethod = MedicalViewerPaintingMethod.Normal; cell1.RegionDefaultCursor = System.Windows.Forms.Cursors.Cross; cell1.RulerInColor = Color.FromArgb(255, 255, 0); cell1.RulerOutColor = Color.FromArgb(255, 0, 0); cell1.RulerStyle = MedicalViewerRulerStyle.Bordered; cell1.ShowCellScroll = false; cell1.ShowFreezeText = true; cell1.TextColor = Color.FromArgb(255, 255, 0); cell1.TextQuality = MedicalViewerTextQuality.Draft; cell1.TextShadowColor = Color.FromArgb(0, 0, 0); cell1.OverlayTextSize = 0; cell1.RegionBorderColor1 = Color.FromArgb(0, 0, 255); cell1.RegionBorderColor2 = Color.FromArgb(255, 255, 255); cell1.InteractiveInterpolation = true; // add some actions that will be used to change the properties of the images inside the control. cell1.AddAction(MedicalViewerActionType.WindowLevel); cell1.AddAction(MedicalViewerActionType.Alpha); cell1.AddAction(MedicalViewerActionType.Scale); cell1.AddAction(MedicalViewerActionType.Offset); cell1.AddAction(MedicalViewerActionType.Stack); // assign the added actions to a mouse button, meaning that when the user clicks and drags the mouse button, the associated action will be activated. cell1.SetAction(MedicalViewerActionType.WindowLevel, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active); cell1.SetAction(MedicalViewerActionType.Offset, MedicalViewerMouseButtons.Right, MedicalViewerActionFlags.Active); cell1.SetAction(MedicalViewerActionType.Scale, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active); cell1.SetAction(MedicalViewerActionType.Stack, MedicalViewerMouseButtons.Wheel, MedicalViewerActionFlags.Active); // assign the added actions to a keyboard keys that will work like the mouse. medicalKeys = new MedicalViewerKeys(); medicalKeys.MouseDown = Keys.Down; medicalKeys.MouseUp = Keys.Up; medicalKeys.MouseLeft = Keys.Left; medicalKeys.MouseRight = Keys.Right; cell1.SetActionKeys(MedicalViewerActionType.Offset, medicalKeys); medicalKeys.Modifiers = MedicalViewerModifiers.Ctrl; cell1.SetActionKeys(MedicalViewerActionType.WindowLevel, medicalKeys); medicalKeys.MouseDown = Keys.PageDown; medicalKeys.MouseUp = Keys.PageUp; cell1.SetActionKeys(MedicalViewerActionType.Stack, medicalKeys); medicalKeys.MouseDown = Keys.Subtract; medicalKeys.MouseUp = Keys.Add; cell1.SetActionKeys(MedicalViewerActionType.Scale, medicalKeys); // adjust some properties to the cell1 and add some tags. cell1.SetTag(2, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.UserData, "EX. ID 230-36-5448"); cell1.SetTag(4, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.Frame); cell1.SetTag(6, MedicalViewerTagAlignment.TopLeft, MedicalViewerTagType.Scale); cell1.SetTag(2, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.WindowLevelData); cell1.SetTag(1, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.FieldOfView); cell1.SetTag(1, MedicalViewerTagAlignment.TopRight, MedicalViewerTagType.UserData, "Good, Guy"); cell1.SetTag(2, MedicalViewerTagAlignment.TopRight, MedicalViewerTagType.UserData, "PID 125-98-445"); cell1.SetTag(3, MedicalViewerTagAlignment.TopRight, MedicalViewerTagType.UserData, "DOB 08/02/1929"); cell1.SetTag(5, MedicalViewerTagAlignment.TopRight, MedicalViewerTagType.UserData, "03/16/1999"); cell1.SetTag(0, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.RulerUnit); Controls.Add(_medicalViewer); _medicalViewer.Dock = DockStyle.Fill; } } static class LEAD_VARS { public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; }