WebClient.DownloadFileCompleted 事件
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
异步文件下载操作完成时发生。
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 类为事件处理程序提供事件数据。
有关如何处理事件的详细信息,请参阅 处理和引发事件。