【问题标题】:How to set_WorkerSupportsCacellation for backgroundWorker如何为 backgroundWorker 设置_WorkerSupportsCacellation
【发布时间】:2012-10-10 14:58:14
【问题描述】:

我的代码中有一个问题,你的 backgroundWorker 启动了两次。因此,我正在尝试设置_WorkerSupportsCacellation,以便在backgroundWorker1.IsBusybackgroundWorker1.CancelAsync 的情况下取消线程。但是,当我执行以下操作时:

this.backgroundWorker1.set_WorkerSupportsCancellation(true);

我得到一个编译错误:

'System.ComponentModel.BackgroundWorker.WorkerSupportsCancellation.set': 无法显式调用运算符或访问器

有谁知道我如何将其设置为 true?

我用谷歌搜索了这个问题,但没有看到答案。到目前为止,我发现以下链接没有帮助:Canceling Threads http://www.c-sharpcorner.com/uploadfile/Ashush/using-the-backgroundworker-component/

谢谢!

【问题讨论】:

    标签: c# visual-studio-2010 backgroundworker


    【解决方案1】:

    我不确定set_WorkerSupportsCancellation(true) 来自哪里,但电话应该是:

     backgroundWorker1.WorkerSupportsCancellation = true;
    

    【讨论】:

    • 我试过了,现在它说我不能显式调用运算符或访问器。我不确定如何设置它。这可能是要设置的属性菜单上的隐藏内容,但我没有看到它。我看到的示例显示了您在此处所说的操作。
    • @Michele 显示更多代码然后 - 一定有其他事情发生
    • 我想通了。见下文。我的后台工作人员在我的班级 [设计] 菜单屏幕上,所以也许这就是原因。真的没有更多的代码可以发布了。在我的设计屏幕上,我转到属性,最后找到了将其设置为 true 的位置。现在它已经设置好了。
    • @Michele 您仍然可以像上面那样以编程方式设置它。我在上面发布的行不是运算符或访问器,因此我很难相信您完全按照书面方式尝试了它。以上工作。
    【解决方案2】:

    在 C# 程序中,如果显式调用属性 setter/getter(编译器生成的方法)或 C# 运算符映射到的方法,则会被视为错误。

    【讨论】:

    • 正如 J... 向您展示的... 什么,这也不起作用?不可能,您的代码中肯定有其他原因导致该错误。
    【解决方案3】:

    我看到了。在属性窗口中,有一个 WorkerSupportsCancellation 选项,我将其设置为 true。呼!!感谢您的帮助!

    【讨论】:

      猜你喜欢
      • 2017-06-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-03
      相关资源
      最近更新 更多