1

我是 WPF 的新手。现在,我必须在主窗口的新窗口中创建一个进度条,但我不知道如何让它在新窗口中运行进度。

下面是我在 mainwindow.xaml.cs 中的声明:

   progressWnd = new ProgressDownloadWindow(cnt_s);
   progressWnd.Owner = this;
   progressWnd.ShowDialog();
   foreach (var dl in this.dldatagrid.SelectedItems)
   {
        string fileName = dl.path;
        this.Download(fileName, false, date);
   }
4

1 回答 1

1

ProgressBar公开了一个名为 的属性,Value您可以使用它来设置进度条的值。所以你需要像

foreach (var dl in this.dldatagrid.SelectedItems)
{ 
    string fileName = dl.path;
    this.Download(fileName, false, date);
    progressbar.Value++;
}

除此之外,您的系统将无法正常工作,因为您正在使用ShowDialog()它创建一个模态对话框并且父窗口将被阻止。因此,您需要使用新窗口创建窗口Dispatcher并在另一个线程上运行它以使其在您进行下载时工作。

查看MSDN以供参考。

于 2013-04-13T09:15:55.100 回答