public void EnableEvents()
-(void)enableEvents
public void enableEvents();
public:
void EnableEvents();
def EnableEvents(self):
Calling DisableEvents will increment an internal counter. When the internal counter is 0, the Changed events will be raised for changes to the RasterImage.
When the internal counter is != 0, Changed will not be raised. Therefore, for each call to DisableEvents, there should be a corresponding call to EnableEvents in order to restore the raising of events.
You can temporary disable the Changed event when performing multiple operations on a RasterImage object then re-enabling it once the operations are done. This way, any listeners to the Changed event will be notified only once thus optimizing the performance.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Core;
using Leadtools.ImageProcessing.Color;
using Leadtools.Dicom;
using Leadtools.Drawing;
using Leadtools.Controls;
using Leadtools.Svg;
public void ChangedExample()
{
RasterCodecs codecs = new RasterCodecs();
string srcFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp");
// Load the image
RasterImage img = codecs.Load(srcFileName);
// Subscribe to the Changed event of this image
img.Changed += new EventHandler<RasterImageChangedEventArgs>(img_Changed);
// Call a few methods and image processing commands that changes the image
Console.WriteLine("Calling FlipViewPerspective");
img.FlipViewPerspective(true);
Console.WriteLine("Calling RotateViewPerspective");
img.RotateViewPerspective(90);
Console.WriteLine("Calling FlipCommand");
FlipCommand flip = new FlipCommand(true);
flip.Run(img);
// Now disable firing the events and call the methods again
Console.WriteLine("Disabling the events");
img.DisableEvents();
Console.WriteLine("Calling FlipViewPerspective");
img.FlipViewPerspective(true);
Console.WriteLine("Calling RotateViewPerspective");
img.RotateViewPerspective(90);
Console.WriteLine("Calling FlipCommand while");
flip.Run(img);
// Re-enable the events and fire it manually
Console.WriteLine("Re-enabling the events");
img.EnableEvents();
Console.WriteLine("Firing the event manually");
RasterImageChangedFlags flags = RasterImageChangedFlags.Data | RasterImageChangedFlags.ViewPerspective;
RasterImageChangedEventArgs e = new RasterImageChangedEventArgs(flags);
img.OnChanged(e);
// Clean up
img.Changed -= new EventHandler<RasterImageChangedEventArgs>(img_Changed);
img.Dispose();
codecs.Dispose();
}
void img_Changed(object sender, RasterImageChangedEventArgs e)
{
// Show the changed flags
Console.WriteLine("Changed: {0}", e.Flags);
}
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