winfrom程序使用backgroundworker 遇到的问题,大神来帮帮小弟
点击开启按钮后执行(一个按钮接连点击几次执行,比如添加很多任务共同执行)
//关键代码
private BackgroundWorker worker =null;
worker = new BackgroundWorker();
worker.WorkerReportsProgress = true;
worker.WorkerSupportsCancellation = true;
worker.DoWork += worker_DoWork;
worker.ProgressChanged += worker_ProgressChanged;
worker.RunWorkerCompleted += worker_RunWorkerCompleted;
if(worker.IsBusy==false)
{
worker.RunWorkerAsync();//开始执行
}
void worker_DoWork(object sender, DoWorkEventArgs e)
{
//逻辑代码
worker.ReportProgress(1,"完成!");//这一句总是报错:此操作上已经调用了 OperationCompleted,进一步的调用是非法的。
}
不知所以,错在哪里,有劳烦告知的大神吗?