ArcGIS Pro 3.4 API Reference Guide
ArcGIS.Desktop.Framework Namespace / OperationManager Class / UndoAsync Method / UndoAsync() Method
Example Version

UndoAsync() Method
Rolls back the most recent operation to reset the last action performed with ArcGIS.Desktop.Framework.Contracts.Operation.Do or ArcGIS.Desktop.Framework.Contracts.Operation.DoAsync.
Syntax
public virtual Task UndoAsync()

Return Value

A task that represents the work queued to execute in the ThreadPool.
Exceptions
ExceptionDescription
Thrown when the operation's ArcGIS.Desktop.Framework.Contracts.Operation.CanUndo method returns false.
Remarks

The most recent operation in the stack is undone by calling its ArcGIS.Desktop.Framework.Contracts.Operation.UndoAsync method. The operation is then added to this OperationManager's redo stack.

Example
Undo/Redo the Most Recent Operation
//undo
if (MapView.Active.Map.OperationManager.CanUndo)
  MapView.Active.Map.OperationManager.UndoAsync();//await as needed

//redo
if (MapView.Active.Map.OperationManager.CanRedo)
  MapView.Active.Map.OperationManager.RedoAsync();//await as needed
Dockpane undo / redo
// in order to find a dockpane you need to know it's DAML id
var pane = FrameworkApplication.DockPaneManager.Find("esri_core_contentsDockPane");

// get the undo stack
OperationManager manager = pane.OperationManager;
if (manager != null)
{
  // undo an operation
  if (manager.CanUndo)
    await manager.UndoAsync();

  // redo an operation
  if (manager.CanRedo)
    await manager.RedoAsync();

  // clear the undo and redo stack of operations of a particular category
  manager.ClearUndoCategory("Some category");
  manager.ClearRedoCategory("Some category");
}
Requirements

Target Platforms: Windows 11, Windows 10

ArcGIS Pro version: 3 or higher.
See Also