1
我創建了一個應用程序,可以從Excel文檔讀取數據。我正在使用後臺工作人員完成所有耗時的任務。我如何顯示在進度欄中完成了多少比例的工作?更新進度條根據進程流量動態調整值C#
我知道有Report_Progress事件存在,但這是否意味着我需要指定硬編碼值?
有沒有什麼辦法可以讓我在全部工作中完成多少工作?
我想指定一個例子,當複製窗口顯示它的進度條時,它會根據複製數據的百分比獲得增量。
請幫我
感謝
我創建了一個應用程序,可以從Excel文檔讀取數據。我正在使用後臺工作人員完成所有耗時的任務。我如何顯示在進度欄中完成了多少比例的工作?更新進度條根據進程流量動態調整值C#
我知道有Report_Progress事件存在,但這是否意味着我需要指定硬編碼值?
有沒有什麼辦法可以讓我在全部工作中完成多少工作?
我想指定一個例子,當複製窗口顯示它的進度條時,它會根據複製數據的百分比獲得增量。
請幫我
感謝
BackgroundWorker backgroundWorker = new BackgroundWorker();
backgroundWorker.WorkerReportsProgress = true;
backgroundWorker.WorkerSupportsCancellation = true;
backgroundWorker.DoWork += new DoWorkEventHandler(backgroundWorker1_DoWork);
backgroundWorker.ProgressChanged += new ProgressChangedEventHandler(backgroundWorker1_ProgressChanged);
void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
backgroundWorker.ReportProgress(yourprogress);
}
void backgroundWorker1_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
Messagebox.show(e.ProgressPercentage.toString())
/// update you progressbar here with e.ProgressPercentage
progressBar.Value = e.ProgressPercentage;
}
你可以找到另一個例子here
SamP - 如果你正在更新一個'DataContext',用這種方法很簡單。否則,如果您直接更新UI控件(不建議),則需要使用「Dispatcher」來調用它。 –
是的,你需要指定它。它不能神奇地解決你有多遠。你需要提供一個[mcve]來顯示你的嘗試和卡住的地方,這個問題過於寬泛。 –