ArcGIS Pro 3.1 API Reference Guide
ArcGIS.Desktop.Editing Namespace / EditOperation Class / SetOnUndone Method
The action to take when this operation is undone.
Example

In This Topic
    SetOnUndone Method
    In This Topic
    Sets an action that will be called when this operation is undone.
    Syntax
    public void SetOnUndone( 
       Action callback
    )
    Public Sub SetOnUndone( _
       ByVal callback As Action _
    ) 

    Parameters

    callback
    The action to take when this operation is undone.
    Example
    SetOnUndone, SetOnRedone, SetOnComitted
    // SetOnUndone, SetOnRedone and SetOnComittedManage can be used to manage 
    // external actions(such as writing to a log table) that are associated with 
    // each edit operation.
    
    //get selected feature and update attribute
    var selectedFeatures = MapView.Active.Map.GetSelection();
    var testInspector = new Inspector();
    testInspector.Load(selectedFeatures.ToDictionary().Keys.First(), selectedFeatures.ToDictionary().Values.First());
    testInspector["Name"] = "test";
    
    //create and execute the edit operation
    var updateTestField = new EditOperation();
    updateTestField.Name = "Update test field";
    updateTestField.Modify(insp);
    
    //actions for SetOn...
    updateTestField.SetOnUndone(() =>
    {
      //Sets an action that will be called when this operation is undone.
      Debug.WriteLine("Operation is undone");
    });
    
    updateTestField.SetOnRedone(() =>
    {
      //Sets an action that will be called when this editoperation is redone.
      Debug.WriteLine("Operation is redone");
    });
    
    updateTestField.SetOnComitted((bool b) => //called on edit session save(true)/discard(false).
    {
      // Sets an action that will be called when this editoperation is committed.
      Debug.WriteLine("Operation is committed");
    });
    
    if (!updateTestField.IsEmpty)
    {
      var result = updateTestField.Execute(); //Execute and ExecuteAsync will return true if the operation was successful and false if not
    }
    Requirements

    Target Platforms: Windows 11, Windows 10

    ArcGIS Pro version: 3.0 or higher.
    See Also