Rediger

Del via


WebClient.DownloadFileCompleted Event

Definition

Occurs when an asynchronous file download operation completes.

public:
 event System::ComponentModel::AsyncCompletedEventHandler ^ DownloadFileCompleted;
public event System.ComponentModel.AsyncCompletedEventHandler? DownloadFileCompleted;
public event System.ComponentModel.AsyncCompletedEventHandler DownloadFileCompleted;
member this.DownloadFileCompleted : System.ComponentModel.AsyncCompletedEventHandler 
Public Custom Event DownloadFileCompleted As AsyncCompletedEventHandler 
Public Event DownloadFileCompleted As AsyncCompletedEventHandler 

Event Type

Examples

The following code example demonstrates setting an event handler for the DownloadFileCompleted event.

// Sample call : DownLoadFileInBackground2 ("http://www.contoso.com/logs/January.txt");
void DownLoadFileInBackground2( String^ address )
{
   WebClient^ client = gcnew WebClient;
   Uri ^uri = gcnew Uri(address);

   // Call DownloadFileCallback2 when the download completes.
   client->DownloadFileCompleted += gcnew AsyncCompletedEventHandler( DownloadFileCallback2 );

   // Specify a progress notification handler here...

   client->DownloadFileAsync( uri, "serverdata.txt" );
}

void DownloadFileCallback2( Object^ /*sender*/, System::ComponentModel::AsyncCompletedEventArgs^ e )
{
   if ( e->Cancelled )
   {
      Console::WriteLine( "File download cancelled." );
   }

   if ( e->Error != nullptr )
   {
      Console::WriteLine( e->Error->ToString() );
   }
}
// Sample call : DownLoadFileInBackground2 ("http://www.contoso.com/logs/January.txt");
public static void DownLoadFileInBackground2(string address)
{
    WebClient client = new WebClient();
    Uri uri = new Uri(address);

    // Call DownloadFileCallback2 when the download completes.
    client.DownloadFileCompleted += new AsyncCompletedEventHandler(DownloadFileCallback2);

    // Specify a progress notification handler here ...

    client.DownloadFileAsync(uri, "serverdata.txt");
}

private static void DownloadFileCallback2(object sender, AsyncCompletedEventArgs e)
{
    if (e.Cancelled)
    {
        Console.WriteLine("File download cancelled.");
    }

    if (e.Error != null)
    {
        Console.WriteLine(e.Error.ToString());
    }
}
' Sample call : DownLoadFileInBackground2 ("http:' www.contoso.com/logs/January.txt")
Public Shared Sub DownLoadFileInBackground2(address As String)

    Dim client As WebClient = New WebClient()

    ' Call DownloadFileCallback2 when the download completes.
    AddHandler client.DownloadFileCompleted, AddressOf DownloadFileCallback2

    ' Specify a progress notification handler here...

    Dim uri as Uri = New Uri(address)
    client.DownloadFileAsync(uri, "serverdata.txt")
End Sub

Private Shared Sub DownloadFileCallback2(sender As Object, e As AsyncCompletedEventArgs)
    If e.Cancelled = True Then
        Console.WriteLine("File download cancelled.")
    End If

    If Not e.Error Is Nothing Then
        Console.WriteLine(e.Error.ToString())
    End If
End Sub

Remarks

Caution

WebRequest, HttpWebRequest, ServicePoint, and WebClient are obsolete, and you shouldn't use them for new development. Use HttpClient instead.

This event is raised each time an asynchronous file download operation completes. Asynchronous file downloads are started by calling the DownloadFileAsync methods.

The AsyncCompletedEventHandler is the delegate for this event. The AsyncCompletedEventArgs class provides the event handler with event data.

For more information about how to handle events, see Handling and Raising Events.

Applies to