public event EventHandler<MedicalViewerActiveSubCellChangedEventArgs> ActiveSubCellChanged public:event EventHandler<MedicalViewerActiveSubCellChangedEventArgs^>^ ActiveSubCellChanged
The event handler receives an argument of type MedicalViewerActiveSubCellChangedEventArgs containing data related to this event. The following MedicalViewerActiveSubCellChangedEventArgs properties provide information specific to this event.
| Property | Description |
|---|---|
| CellIndex | Gets the value that indicates the index of the cell that has its active sub-cell changed. This value is only valid if the cell has been added to the MedicalViewer. |
| PreviousSubCellIndex | Gets the value that indicates the index of the sub-cell that has lost the active state. |
| SubCellIndex | Gets the value that indicates the index of the sub-cell that has been activated. |
using Leadtools;using Leadtools.Codecs;using Leadtools.MedicalViewer;class MedicalViewerForm : Form{private MedicalViewer _medicalViewer;void MedicalViewerForm_SizeChanged(object sender, EventArgs e){_medicalViewer.Size = new Size(this.ClientRectangle.Right, this.ClientRectangle.Bottom);}public MedicalViewerForm(){RasterCodecs _codecs = new RasterCodecs();RasterImage _image;this.SizeChanged += new EventHandler(MedicalViewerForm_SizeChanged);// Create the medical viewer and adjust the size and the location._medicalViewer = new MedicalViewer(1, 2);_medicalViewer.Location = new Point(0, 0);_medicalViewer.Size = new Size(this.ClientRectangle.Right, this.ClientRectangle.Bottom);// 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);// 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.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.Stack, MedicalViewerMouseButtons.Wheel, MedicalViewerActionFlags.Active);cell.SetAction(MedicalViewerActionType.WindowLevel, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active);cell.SetAction(MedicalViewerActionType.Alpha, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active);cell.SetAction(MedicalViewerActionType.Offset, MedicalViewerMouseButtons.Right, MedicalViewerActionFlags.Active);// 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);_medicalViewer.Cells.Add(cell);// Load another image and then add it to the control._image = _codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "mr.dcm"));MedicalViewerMultiCell cell1 = new MedicalViewerMultiCell(_image, true, 2, 2);_medicalViewer.Cells.Add(cell1);// 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.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.Stack, MedicalViewerMouseButtons.Wheel, MedicalViewerActionFlags.Active);cell1.SetAction(MedicalViewerActionType.WindowLevel, MedicalViewerMouseButtons.Left, MedicalViewerActionFlags.Active);cell1.SetAction(MedicalViewerActionType.Alpha, MedicalViewerMouseButtons.Middle, MedicalViewerActionFlags.Active);cell1.SetAction(MedicalViewerActionType.Offset, MedicalViewerMouseButtons.Right, MedicalViewerActionFlags.Active);// adjust some properties of the cell 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);Controls.Add(_medicalViewer);_medicalViewer.Dock = DockStyle.Fill;}public MedicalViewer Viewer{get { return _medicalViewer; }}}MedicalViewerForm GetMedicalControl(){return new MedicalViewerForm();}// This example will link the active sub-cell of the first cell to the second cell and vice versa.public void MedicalViewerActiveSubCellChangedExample(){MedicalViewerForm myForm = GetMedicalControl();MedicalViewer medicalViewer = myForm.Viewer;MedicalViewerMultiCell cell = (MedicalViewerMultiCell)(medicalViewer.Cells[0]);MedicalViewerMultiCell cell1 = (MedicalViewerMultiCell)(medicalViewer.Cells[1]);cell.ActiveSubCellChanged += new EventHandler<MedicalViewerActiveSubCellChangedEventArgs>(medicalViewer_ActiveSubCellChanged);cell1.ActiveSubCellChanged += new EventHandler<MedicalViewerActiveSubCellChangedEventArgs>(cell1_ActiveSubCellChanged);myForm.ShowDialog();}void cell1_ActiveSubCellChanged(object sender, MedicalViewerActiveSubCellChangedEventArgs e){medicalViewer_ActiveSubCellChanged(sender, e);}void medicalViewer_ActiveSubCellChanged(object sender, MedicalViewerActiveSubCellChangedEventArgs e){MedicalViewerMultiCell cell = (MedicalViewerMultiCell)sender;int index = (e.CellIndex == 1) ? 0 : 1;MedicalViewerMultiCell theOtherCell = (MedicalViewerMultiCell)(cell.ParentViewer.Cells[index]);MedicalViewerStack stackProperties = (MedicalViewerStack)theOtherCell.GetActionProperties(MedicalViewerActionType.Stack);stackProperties.ActiveSubCell = e.SubCellIndex % (theOtherCell.Rows * theOtherCell.Columns);stackProperties.ScrollValue = e.SubCellIndex - stackProperties.ActiveSubCell;theOtherCell.SetActionProperties(MedicalViewerActionType.Stack, stackProperties);stackProperties.Dispose();}static class LEAD_VARS{public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images";}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document
