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

備註

每次非同步檔案下載作業完成時,就會引發此事件。 非同步檔案下載會藉由呼叫 DownloadFileAsync 方法來啟動。

AsyncCompletedEventHandler是這個事件的委派。 類別 AsyncCompletedEventArgs 會提供事件處理常式與事件資料。

如需如何處理事件的詳細資訊,請參閱 處理和引發事件

適用於