问题 BackgroundWorker RunWorkerCompletedEventArgs.Cancelled始终为false


简单来说:

我通过拨打电话取消我的操作 CancelAsync() BackgroundWorker上的方法,当执行落入事件时 RunWorkerCompleted,财产 Cancelled 上 RunWorkerCompletedEventArgs 是假的。我无法弄清楚何时何地应该将其设置为true,因为这是一个EventArgs属性。

谁能给我一点帮助? 此外,抱歉,如果它是重复,但我找不到任何关于此的问题。


12704
2018-01-21 11:56


起源



答案:


MSDN

取消的属性   RunWorkerCompletedEventArgs   表示是否取消   请求由。处理   后台操作。

如果您的代码在   DoWork事件处理程序检测到   通过检查取消请求   取消成交标记和设置   取消标志   DoWorkEventArgs   为true,取消的标志   RunWorkerCompletedEventArgs   也将设置为true。


15
2018-01-21 12:00



现在我觉得很傻。我DID在BackgroundWoker上阅读了MSDN的主题。但也许我没有阅读RunWorkerCompletedEventArgs的主题。无论如何,非常感谢快速明确的答案。 - Smur


答案:


MSDN

取消的属性   RunWorkerCompletedEventArgs   表示是否取消   请求由。处理   后台操作。

如果您的代码在   DoWork事件处理程序检测到   通过检查取消请求   取消成交标记和设置   取消标志   DoWorkEventArgs   为true,取消的标志   RunWorkerCompletedEventArgs   也将设置为true。


15
2018-01-21 12:00



现在我觉得很傻。我DID在BackgroundWoker上阅读了MSDN的主题。但也许我没有阅读RunWorkerCompletedEventArgs的主题。无论如何,非常感谢快速明确的答案。 - Smur