←Select platform

EnableEvents Method

Summary
Enables raising the Changed event.
Syntax
C#
Objective-C
C++/CLI
Java
Python
public void EnableEvents() 
-(void)enableEvents 
public void enableEvents(); 
public: 
void EnableEvents();  
def EnableEvents(self): 
Remarks

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.

Example
C#
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"; 
} 
Requirements

Target Platforms

Help Version 22.0.2023.5.16
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.

Leadtools Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.