AsyncCompletedEventHandler Delegate


Represents the method that will handle the MethodNameCompleted event of an asynchronous operation.

public delegate void AsyncCompletedEventHandler(System::Object ^ sender, AsyncCompletedEventArgs ^ e);
public delegate void AsyncCompletedEventHandler(object sender, AsyncCompletedEventArgs e);
public delegate void AsyncCompletedEventHandler(object? sender, AsyncCompletedEventArgs e);
type AsyncCompletedEventHandler = delegate of obj * AsyncCompletedEventArgs -> unit
Public Delegate Sub AsyncCompletedEventHandler(sender As Object, e As AsyncCompletedEventArgs)



The source of the event.


An AsyncCompletedEventArgs that contains the event data.


For a code example of the AsyncCompletedEventHandler delegate, see the example in the System.ComponentModel.AsyncCompletedEventArgs class.


When you create an AsyncCompletedEventHandler delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event-handler method is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see Handling and Raising Events.

For an asynchronous method, called MethodName, in your component, you will have a corresponding MethodNameCompleted event, and an optional MethodNameCompletedEventArgs class.

For a component that supports multiple concurrent invocations of its asynchronous methods, the client can supply a unique token, or task ID, to distinguish which asynchronous task is raising particular events. The client's AsyncCompletedEventHandler can read the AsyncCompletedEventArgs.UserState property to determine which task is reporting completion. Your implementation should use the System.ComponentModel.AsyncOperationManager to create an System.ComponentModel.AsyncOperation that associates the client's task IDs with pending asynchronous tasks.

Extension Methods


Gets an object that represents the method represented by the specified delegate.

Applies to

See also