ArcGIS Pro 3.3 API Reference Guide
ArcGIS.Desktop.Framework.Threading.Tasks Namespace / Progressor Class / Value Property
Example

In This Topic
    Value Property (Progressor)
    In This Topic
    Gets or sets the position of the progress meter displayed in the progress dialog.
    Syntax
    public uint Value {get; set;}
    Public Property Value As UInteger
    Example
    Progressor - Cancelable
    public async Task Progressor_Cancelable()
    {
      ArcGIS.Desktop.Framework.Threading.Tasks.CancelableProgressorSource cps =
        new ArcGIS.Desktop.Framework.Threading.Tasks.CancelableProgressorSource("Doing my thing - cancelable", "Canceled");
    
      int numSecondsDelay = 5;
      //If you run this in the DEBUGGER you will NOT see the dialog
    
      //simulate doing some work which can be canceled
      await ArcGIS.Desktop.Framework.Threading.Tasks.QueuedTask.Run(() =>
      {
        cps.Progressor.Max = (uint)numSecondsDelay;
        //check every second
        while (!cps.Progressor.CancellationToken.IsCancellationRequested)
        {
          cps.Progressor.Value += 1;
          cps.Progressor.Status = "Status " + cps.Progressor.Value;
          cps.Progressor.Message = "Message " + cps.Progressor.Value;
    
          if (System.Diagnostics.Debugger.IsAttached)
          {
            System.Diagnostics.Debug.WriteLine(string.Format("RunCancelableProgress Loop{0}", cps.Progressor.Value));
          }
          //are we done?
          if (cps.Progressor.Value == cps.Progressor.Max) break;
          //block the CIM for a second
          Task.Delay(1000).Wait();
    
        }
        System.Diagnostics.Debug.WriteLine(string.Format("RunCancelableProgress: Canceled {0}",
                                            cps.Progressor.CancellationToken.IsCancellationRequested));
    
      }, cps.Progressor);
    }
    Requirements

    Target Platforms: Windows 11, Windows 10

    ArcGIS Pro version: 3 or higher.
    See Also