Skip to main content
All docs
V25.2
  • ProcessDataLockingInfoController.DataLockingProcessed Event

    XAF raises this event after it handles all detected conflicts. If no conflicts are detected, it does not raise the event.

    Namespace: DevExpress.ExpressApp.SystemModule

    Assembly: DevExpress.ExpressApp.v25.2.dll

    NuGet Package: DevExpress.ExpressApp

    Declaration

    public event EventHandler<DataLockingProcessedEventArgs> DataLockingProcessed

    Event Data

    The DataLockingProcessed event's data class is DevExpress.ExpressApp.SystemModule.DataLockingProcessedEventArgs.

    Remarks

    In the following code sample, when a user clicks Discard All My Changes, the ObjectSpace.Refresh method invalidates all previously loaded objects in the current Object Space and resets all unsaved user changes.

    public class CustomDataLockingViewController : ObjectViewController<DetailView, Product> {
     private ProcessDataLockingInfoController lockController;
    
     protected override void OnActivated() {
       base.OnActivated();
       lockController = Frame.GetController<ProcessDataLockingInfoController>();
       lockController.DataLockingProcessed += OnDataLockingProcessed;
     }
    
     private void OnDataLockingProcessed(object sender, DataLockingProcessedEventArgs e) {
       if (e.Result == ProcessDataLockingInfoDialogResult.Refresh) {
         ObjectSpace.Refresh();
       }
     }
    
     protected override void OnDeactivated() {
       base.OnDeactivated();
       if (lockController != null) {
         lockController.DataLockingProcessed -= OnDataLockingProcessed;
         lockController = null;
       }
     }
    }
    
    See Also