AsyncCompletedEventArgs.Error Property
Gets a value indicating which error occurred during an asynchronous operation.
Assembly: System (in System.dll)
If an exception is raised during an asynchronous operation, the class will assign the exception to the Error property. The client application's event-handler delegate should check the Error property before accessing any properties in a class derived from AsyncCompletedEventArgs; otherwise, the property will raise a TargetInvocationException with its InnerException property holding a reference to Error.
The value of the Error property is null if the operation was canceled.
Notes to Inheritors:
If you provide read-only properties in a derived class, be sure to call the RaiseExceptionIfNecessary method in your property implementation. This prevents clients from accessing properties that are potentially not valid due to a failure in the asynchronous operation.
The following code example demonstrates using an AsyncOperation to track the lifetime of asynchronous operations. This code example is part of a larger example provided for the System.ComponentModel.AsyncOperationManager class.
Imports System Imports System.Collections Imports System.Collections.Specialized Imports System.ComponentModel Imports System.Drawing Imports System.Globalization Imports System.Threading Imports System.Windows.Forms
' This event handler updates the ListView control when the ' PrimeNumberCalculator raises the CalculatePrimeCompleted ' event. The ListView item is updated with the appropriate ' outcome of the calculation: Canceled, Error, or result. Private Sub primeNumberCalculator1_CalculatePrimeCompleted( _ ByVal sender As Object, _ ByVal e As CalculatePrimeCompletedEventArgs) _ Handles primeNumberCalculator1.CalculatePrimeCompleted Dim taskId As Guid = CType(e.UserState, Guid) If e.Cancelled Then Dim result As String = "Canceled" Dim lvi As ListViewItem = UpdateListViewItem( _ taskId, _ result) If (lvi IsNot Nothing) Then lvi.BackColor = Color.Pink lvi.Tag = Nothing End If ElseIf e.Error IsNot Nothing Then Dim result As String = "Error" Dim lvi As ListViewItem = UpdateListViewItem( _ taskId, result) If (lvi IsNot Nothing) Then lvi.BackColor = Color.Red lvi.ForeColor = Color.White lvi.Tag = Nothing End If Else Dim result As Boolean = e.IsPrime Dim lvi As ListViewItem = UpdateListViewItem( _ taskId, _ result, _ e.FirstDivisor) If (lvi IsNot Nothing) Then lvi.BackColor = Color.LightGray lvi.Tag = Nothing End If End If End Sub
Available since 8
.NET Framework
Available since 2.0
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1