public virtual void Lock() Public Overridable Sub Lock() -(void) lock; public void lock() public:virtual void Lock()
Use the CanLock property to determine whether you can currently call this method.
For more information, refer to Implementing Annotation Security.
This example will show how to lock and unlock an object, prompting the user for a password.
using Leadtools.Annotations.Automation;using Leadtools.Annotations.Engine;using Leadtools.Codecs;using Leadtools.Controls;using Leadtools.Annotations.Rendering;using Leadtools.Annotations.WinForms;public void AnnAutomation_Lock(){// first add a new object to the automationAnnRectangleObject rectObj = new AnnRectangleObject();rectObj.Rect = LeadRectD.Create(100, 100, 800, 800);rectObj.Stroke = AnnStroke.Create(AnnSolidColorBrush.Create("Blue"), LeadLengthD.Create(1));rectObj.Fill = AnnSolidColorBrush.Create("Yellow");_automation.Container.Children.Add(rectObj);_automation.Invalidate(LeadRectD.Empty);// make sure no objects are selected in the automation_automation.SelectObject(null);// Hook to the lock and unlock events_automation.LockObject += _automation_LockObject;_automation.UnlockObject += _automation_UnlockObject;// see if we can lock or unlock the object (this should show a message informing you that no objects are currently selected (bring edited)LockUnlock(_automation);// select (edit) the object we have just added_automation.SelectObject(rectObj);// see if we can lock or unlock the object (should show the password dialog to lock the object)LockUnlock(_automation);_automation.LockObject -= _automation_LockObject;_automation.UnlockObject -= _automation_UnlockObject;}private void LockUnlock(AnnAutomation automation){// first, check if we can lock the objectif (automation.CanLock){// lock this objectautomation.Lock();}else if (automation.CanUnlock){// unlock this objectautomation.Unlock();}else{Debug.WriteLine("Cannot lock or unlock because no object is currently being edited (selected)");}}void _automation_LockObject(object sender, AnnLockObjectEventArgs e){Debug.WriteLine(string.Format("Lock it, sending password = {0}", "secret"));e.Password = "secret";}void _automation_UnlockObject(object sender, AnnLockObjectEventArgs e){Debug.WriteLine(string.Format("Unlock it, sending password = {0}", "secret"));e.Password = "secret";}
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
