【问题标题】:.Net Windows Forms - Limit form navigation while waiting on asynchronous work.Net Windows Forms - 在等待异步工作时限制表单导航
【发布时间】:2009-05-21 18:26:35
【问题描述】:

单击按钮时,会在后台工作程序中执行查询。它是异步的,因此我可以将按钮更改为“取消”,以便用户可以在进程运行时间超过预期时取消该进程。这一切都很好。

但是,我不希望用户能够离开此位置以在表单上执行其他操作。他们必须能够单击“取消”按钮或关闭表单,但不能做其他事情。

【问题讨论】:

  • 下次请用问题的形式表达你的问题。

标签: c# .net winforms asynchronous


【解决方案1】:

然后我建议您在开始处理查询时禁用表单上的其他控件,并在后台工作人员完成后重新启用它们。

【讨论】:

    【解决方案2】:

    最好的方法是创建一个像 DisableControls() 这样的方法,其中包含所有其他控件的禁用命令。

    一旦异步工作完成,在回调中,调用类似 EnableControls() 的方法来反转进程。

    【讨论】:

      猜你喜欢
      • 2020-12-28
      • 2014-06-06
      • 2013-11-13
      • 1970-01-01
      • 2019-01-13
      • 1970-01-01
      • 1970-01-01
      • 2020-02-18
      • 2017-12-07
      相关资源
      最近更新 更多