DownloadDataCompletedEventArgs Class

 

Provides data for the DownloadDataCompleted event.

Namespace:   System.Net
Assembly:  System (in System.dll)

System.Object
  System.EventArgs
    System.ComponentModel.AsyncCompletedEventArgs
      System.Net.DownloadDataCompletedEventArgs

public class DownloadDataCompletedEventArgs : AsyncCompletedEventArgs

NameDescription
System_CAPS_pubpropertyCancelled

Gets a value indicating whether an asynchronous operation has been canceled.(Inherited from AsyncCompletedEventArgs.)

System_CAPS_pubpropertyError

Gets a value indicating which error occurred during an asynchronous operation.(Inherited from AsyncCompletedEventArgs.)

System_CAPS_pubpropertyResult

Gets the data that is downloaded by a DownloadDataAsync method.

System_CAPS_pubpropertyUserState

Gets the unique identifier for the asynchronous task.(Inherited from AsyncCompletedEventArgs.)

NameDescription
System_CAPS_pubmethodEquals(Object)

Determines whether the specified object is equal to the current object.(Inherited from Object.)

System_CAPS_protmethodFinalize()

Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.(Inherited from Object.)

System_CAPS_pubmethodGetHashCode()

Serves as the default hash function. (Inherited from Object.)

System_CAPS_pubmethodGetType()

Gets the Type of the current instance.(Inherited from Object.)

System_CAPS_protmethodMemberwiseClone()

Creates a shallow copy of the current Object.(Inherited from Object.)

System_CAPS_protmethodRaiseExceptionIfNecessary()

Raises a user-supplied exception if an asynchronous operation failed.(Inherited from AsyncCompletedEventArgs.)

System_CAPS_pubmethodToString()

Returns a string that represents the current object.(Inherited from Object.)

Instances of this class are passed to the DownloadDataCompletedEventHandler.

The following code example demonstrates downloading a user-specified resource.

// Sample call : DownLoadDataInBackground ("http://www.contoso.com/GameScores.html");
public static void DownloadDataInBackground (string address)
{
    System.Threading.AutoResetEvent waiter = new System.Threading.AutoResetEvent (false);
    WebClient client = new WebClient ();
    Uri uri = new Uri(address);

    // Specify that the DownloadDataCallback method gets called
    // when the download completes.
    client.DownloadDataCompleted += new DownloadDataCompletedEventHandler (DownloadDataCallback);
    client.DownloadDataAsync (uri, waiter);

    // Block the main application thread. Real applications
    // can perform other tasks while waiting for the download to complete.
    waiter.WaitOne ();
}

The following method is called when the download completes.

private static void DownloadDataCallback (Object sender, DownloadDataCompletedEventArgs e)
{
    System.Threading.AutoResetEvent waiter = (System.Threading.AutoResetEvent)e.UserState;

    try
    {
        // If the request was not canceled and did not throw
        // an exception, display the resource.
        if (!e.Cancelled && e.Error == null)
        {
            byte[] data = (byte[])e.Result;
            string textData = System.Text.Encoding.UTF8.GetString (data);

            Console.WriteLine (textData);
        }
    }
    finally
    {
        // Let the main application thread resume.
        waiter.Set ();
    }
}

.NET Framework
Available since 2.0

Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top
Show: