The ImageViewerInteractiveMode that is currently processing the input events (working).
public virtual ImageViewerInteractiveMode WorkingInteractiveMode { get; }
public:
virtual property ImageViewerInteractiveMode^ WorkingInteractiveMode
{
ImageViewerInteractiveMode^ get()
}
The ImageViewerInteractiveMode that is currently processing the input events (working).
ImageViewer will hook to the ImageViewerInteractiveMode.WorkStarted and ImageViewerInteractiveMode.WorkCompleted of the interactive modes set in InteractiveModes. When work starts or completes, the PropertyChanged event fires with "WorkingInteractiveMode" as the property name and the value of WorkingInteractiveMode updates accordingly. Use WorkingInteractiveMode to perform any custom action required by your application.
For devices that support mouse pointers, the cursor will change to the value of ImageViewerInteractiveMode.WorkingCursor when the interactive mode is working.
For more information, refer to Image Viewer Interactive Modes.
This example will track the working interactive mode value and set it in a label.
Run the demo, click the Example button.
Start with the ImageViewer example, remove all the code inside the example function (search for the "// TODO: add example code here" comment) and insert the following code:
using Leadtools;
using Leadtools.Controls;
using Leadtools.Codecs;
using Leadtools.Drawing;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Color;
public ImageViewerForm _form = new ImageViewerForm();
public ImageViewer _imageViewer;
public void ImageViewerWorkingInteractiveModeExample()
{
// Get the ImageViewer control
_imageViewer = _form.ImageViewer;
// Load Image
using (var codecs = new RasterCodecs())
_imageViewer.Image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Cannon.jpg"));
// Add Pan/Zoom interactive mode
// Click and drag to pan, CTRL-Click and drag to zoom in and out
_imageViewer.DefaultInteractiveMode = new ImageViewerPanZoomInteractiveMode();
// Subscribe to PropertyChanged event
_imageViewer.PropertyChanged += (sender, e) =>
{
if (e.PropertyName == "WorkingInteractiveMode")
{
if (_imageViewer.WorkingInteractiveMode != null)
{
Debug.WriteLine("Interactive mode working: " + _imageViewer.WorkingInteractiveMode.Name);
_imageViewer.InteractiveModes.BeginUpdate();
_imageViewer.WorkingInteractiveMode.WorkingCursor = Cursors.Hand;
_imageViewer.InteractiveModes.EndUpdate();
}
else
Debug.WriteLine("Interactive mode finished work");
}
};
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS23\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