Web クライアントを使用してファイルをサーバーにアップロードするアプリがあります。ファイルのアップロードの進行中にプログレスバーを表示したいと思います。これを達成するにはどうすればよいですか?
22201 次
2 に答える
26
WebClient.UploadFileAsyncを使用すると、これを行うことができます。
WebClient webClient = new WebClient();
webClient.UploadFileAsync(address, fileName);
webClient.UploadProgressChanged += WebClientUploadProgressChanged;
...
void WebClientUploadProgressChanged(object sender, UploadProgressChangedEventArgs e)
{
Console.WriteLine("Upload {0}% complete. ", e.ProgressPercentage);
}
アップロード時にスレッドがブロックされなくなることに注意してください。そのため、次の使用をお勧めします。
webClient.UploadFileCompleted += WebClientUploadCompleted;
...
void WebClientUploadCompleted(object sender, UploadFileCompletedEventArgs e)
{
// The upload is finished, clean up
}
于 2009-06-11T17:00:09.557 に答える
2
イベント ハンドラーを WebClient.UploadProgressChanged に追加し、WebClient.UploadFileAsync を呼び出します。
例については、 WebClient.UploadProgressChangedのドキュメントを参照してください。
于 2009-06-11T17:01:44.220 に答える