Provides data for the MethodNameCompleted event.
System.EventArgs
System.ComponentModel.AsyncCompletedEventArgs
More...
Namespace: System.ComponentModel
Assembly: System (in System.dll)
Public Class AsyncCompletedEventArgs _ Inherits EventArgs
public class AsyncCompletedEventArgs : EventArgs
The AsyncCompletedEventArgs type exposes the following members.
| Name | Description | |
|---|---|---|
|
AsyncCompletedEventArgs() | Initializes a new instance of the AsyncCompletedEventArgs class. |
|
AsyncCompletedEventArgs(Exception, Boolean, Object) | Initializes a new instance of the AsyncCompletedEventArgs class. |
| Name | Description | |
|---|---|---|
|
Cancelled | Gets a value that indicates whether an asynchronous operation has been canceled. |
|
Error | Gets a value that indicates which error occurred during an asynchronous operation. |
|
UserState | Gets the unique identifier for the asynchronous task. |
| Name | Description | |
|---|---|---|
|
Equals(Object) | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) |
|
Finalize | Allows an object to try to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.) |
|
GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
|
GetType | Gets the Type of the current instance. (Inherited from Object.) |
|
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
|
RaiseExceptionIfNecessary | Raises a user-supplied exception if an asynchronous operation failed. |
|
ToString | Returns a string that represents the current object. (Inherited from Object.) |
If you are using a class that implements the event-based asynchronous pattern that is described in the Event-based Asynchronous Pattern Overview topic of the .NET Framework documentation, the class will provide a MethodNameCompleted event. If you add an instance of the System.ComponentModel.AsyncCompletedEventHandler delegate to the event, you will receive information about the outcome of asynchronous operations in the AsyncCompletedEventArgs parameter of the corresponding event-handler method.
The client application's event-handler delegate can check the Cancelled property to determine if the asynchronous task was canceled.
The client application's event-handler delegate can check the Error property to determine if an exception occurred during execution of the asynchronous task.
If the class supports multiple asynchronous methods, or multiple calls to the same asynchronous method, you can determine which task raised the MethodNameCompleted event by checking the value of the UserState property. Your code will have to track these tokens, known as task IDs, as their corresponding asynchronous tasks start and complete.
Notes to Inheritors
You may want to communicate to clients more information about the outcome of an asynchronous operation than AsyncCompletedEventArgs supports. In this case, you can derive a custom class from the AsyncCompletedEventArgs class and provide additional private instance variables and corresponding read-only public properties. Call the RaiseExceptionIfNecessary method before you return the property value, in case the operation was canceled or an error occurred.
The following code example demonstrates how to derive a custom class from AsyncCompletedEventArgs to pass additional information back to the client from an asynchronous operation. This code example is part of a larger example provided for the System.ComponentModel.AsyncOperationManager class.
' Define a custom Completed-event arguments class allowing ' the data gathered by GetPersons to be returned. Public Class GetPersonsCompletedEventArgs Inherits AsyncCompletedEventArgs Private m_dataListValue As List(Of Person) Public Sub New _ (ByVal dataList As List(Of Person), _ ByVal exception As Exception, _ ByVal cancelled As Boolean, _ ByVal userState As Object) MyBase.New(exception, cancelled, userState) m_dataListValue = dataList End Sub Public ReadOnly Property DataListValue() As List(Of Person) Get Me.RaiseExceptionIfNecessary() Return m_dataListValue End Get End Property End Class
// Define a custom Completed-event arguments class allowing // the data gathered by GetPersons to be returned. public class GetPersonsCompletedEventArgs : AsyncCompletedEventArgs { private List<Person> dataListValue; public GetPersonsCompletedEventArgs( List<Person> dataList, Exception error, bool cancelled, object userState) : base(error, cancelled, userState) { dataListValue = dataList; } public List<Person> DataListValue { get { this.RaiseExceptionIfNecessary(); return dataListValue; } } }
Silverlight
Supported in: 5, 4, 3Silverlight for Windows Phone
Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0XNA Framework
Supported in: Xbox 360, Windows Phone OS 7.0For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.
Reference
Other Resources
System.EventArgs
System.ComponentModel.AsyncCompletedEventArgs
System.ComponentModel.RunWorkerCompletedEventArgs
System.Data.Services.Client.LoadCompletedEventArgs
System.Net.DownloadStringCompletedEventArgs
System.Net.OpenReadCompletedEventArgs
System.Net.OpenWriteCompletedEventArgs
System.Net.UploadStringCompletedEventArgs
System.ServiceModel.ClientBase<TChannel>.InvokeAsyncCompletedEventArgs
System.Windows.Media.AcquireLicenseCompletedEventArgs
System.Windows.Media.CaptureImageCompletedEventArgs
System.Windows.Media.DomainOperationCompletedEventArgs
System.Windows.Media.DrmSetupDecryptorCompletedEventArgs
System.Windows.Messaging.SendCompletedEventArgs