我有多个要下载的文件,我在C#中使用了Parallel.foreach。它工作正常。现在我想使用进度条检查下载进度。这怎么可能?
我使用过这段代码:
Parallel.For(0, numofitems, options, j =>
{
using (WebClient client = new WebClient())
{
client.DownloadProgressChanged += new DownloadProgressChangedEventHandler(client_DownloadProgressChanged);
client.DownloadFile(list[j], @"F:\Test\Test2\a" + j + ".png");
}
}
答案 0 :(得分:1)
试试这个。
1.在表单中删除进度条。在我的示例中,我将名称保留为“progressBar1”
2.将您的DownloadProgressChanged事件更改为以下
client.DownloadProgressChanged += (s, e) =>
{
progressBar1.Value = e.ProgressPercentage;
};