当我拨打ProgressChanged
方法时,我发现InvalidOperationException
我在MSDN上发现这种情况发生了,因为WorkerReportsProgress
设置为false
但是它在我的程序中设置为true。
这是BW初始化:
bw = new BackgroundWorker();
bw.DoWork += new DoWorkEventHandler(bw_DoWork);
bw.WorkerReportsProgress = true;
bw.ProgressChanged += new ProgressChangedEventHandler(bw_ProgressChanged);
bw.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bw_RunWorkerCompleted);
对进度的调用:
tempNetwork.Nodes.Add(tempNode);
bw.ReportProgress(1, tempNetwork);
tempNetwork
是本地的