1

这一切都是新的……</p>

如果我从主 UI 线程启动一个 BackgroundWorker,我可以成功地在同一个 BackgroundWorker 的 RunWorkerCompleted 事件中更新我的 UI 控件。这部分效果很好。

但是,如果我从 UI 线程以外的线程启动 BackgroundWorker,那么如果我尝试操作任何 UI 控件,就会在 RunWorkerCompleted 方法中出现错误。

我的问题:启动 BackgroundWorker 的线程是否与拥有 RunWorkerCompleted 方法的线程相同?如果是这样,是否可以启动一个 BackgroundWorker,使其关联的 RunWorkerCompleted 方法位于 UI 线程上?

(仅供参考,我通过在有问题的 RunWorkerCompleted 方法中使用调度程序解决了这个问题,但我希望有另一种方法。谢谢。)

4

0 回答 0