Поделиться через


WebClient.DownloadFileCompleted Событие

Определение

Происходит при завершении асинхронной операции скачивания файлов.

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 

Тип события

Примеры

В следующем примере кода показано задание обработчика событий для события DownloadFileCompleted.

// 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

Комментарии

Осторожность

WebRequest, HttpWebRequest, ServicePointи WebClient устарели, и их не следует использовать для новой разработки. Вместо этого используйте HttpClient.

Это событие возникает при каждом завершении асинхронной операции скачивания файлов. Асинхронные загрузки файлов запускаются путем вызова методов DownloadFileAsync.

AsyncCompletedEventHandler является делегатом для этого события. Класс AsyncCompletedEventArgs предоставляет обработчик событий данными о событиях.

Дополнительные сведения об обработке событий см. в обработке и вызове событий.

Применяется к