如何在TextBlock和ProgressBar中显示进度

本文关键字:显示 ProgressBar TextBlock | 更新日期: 2023-09-27 18:06:29

我想展示我的Excel阅读程序的进度。下面是一些代码:

public void ReadExcel()
    {
    //Do something (get Excel File...)
    txtProgress.Text += "Start";        
    int rows = exRng.Rows.Count;
    int column = exRng.Columns.Count;
    progProgress.Maximum = rows;//ProgressBar
    txtProgress.Text += "Start";//TextBlock
    for (int i = 1; i <= rows; i++)
    {
        progProgress.Value = i;         
        //Do something
        txtProgress.Text += "'n " + Name + " was created";
    }
}

ProgressBar Maximum是excel文件中的行数。在每个循环之后,TextBlock应该显示名称已经创建。ProgressBar值应该显示进度。

我的窗口是这样的:窗口,顶部有一个文本块,底部有一个进度条

但是窗口只显示excel读数的末尾。它不会刷新TextBlock或ProgressBar。我只看到一个空窗口,在这个窗口的末尾:进度结束

有人能帮帮我吗?Thx

如何在TextBlock和ProgressBar中显示进度

你应该使用backgroundWorker来实现这一点。这里详细讨论了一个非常相似的例子

询问,如果你在执行中遇到困难。