Tag: 后台工作

Backgroundworker不会报告进度

我有一个后台工作程序运行长数据库任务。 我想在任务运行时显示进度条。 不知何故,后台工作人员不会报告任务的进度。 这就是我所拥有的: BackgroundWorker _bgwLoadClients; _bgwLoadClients = new BackgroundWorker(); _bgwLoadClients.WorkerReportsProgress = true; _bgwLoadClients.DoWork += new DoWorkEventHandler(_bgwLoadClients_DoWork); _bgwLoadClients.RunWorkerCompleted += new RunWorkerCompletedEventHandler(_bgwLoadClients_RunWorkerCompleted); _bgwLoadClients.ProgressChanged += new ProgressChangedEventHandler(_bgwLoadClients_ProgressChanged); _bgwLoadClients.RunWorkerAsync(parms); private void _bgwLoadClients_DoWork(object sender, DoWorkEventArgs e) { DataTable dt = getdate(); e.Result = dt; } void _bgwLoadClients_ProgressChanged(object sender, ProgressChangedEventArgs e) { progressBar1.Value = e.ProgressPercentage; } 我在WPF中这样做,但我想它不会有所作为。 提前致谢