上面有这样的BackgroundWorker吗?当一个函数在DoWork回调中结束时,我会ProgressChanged根据函数的结束来获取这个进度的值。
代码示例:
bw.DoWork += (a,b) => {
foo();
baa();
if(..) else { }
};
当每个语句结束时,我开始
bw.ProgressChanged += (o, e) => {
MessageBox.Show(e.ProgressPercentage);
};
我有三个stataments,它应该打印三个Message.Show():33,66,100
33% =>foo()被执行。
66% =>baa()被执行。
100% => if(..) else { }最后一条语句被执行,完成。
我可以.ReportProgress()在回调事件上运行的每个函数/语句中调用方法DoWork,但是根据语句编号,这可能是不可行的。
我希望这很清楚。我为我糟糕的英语道歉。