2009-05-21 23 views
1

单击按钮时,查询将在后台工作人员中执行。它是异步的,因此我可以将该按钮更改为“取消”,以便用户可以取消进程,如果运行时间超出预期。这一切工作正常。.Net Windows窗体 - 在等待异步工作时限制表单导航

但是,我不希望用户能够从此位置导航到在窗体上执行其他操作。他们必须能够点击取消按钮或关闭表格,但没有其他。

+2

下次请以问题的形式说出您的问题。 – mquander 2009-05-21 18:28:33

回答

1

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

异步工作完成后,在回调中,调用像EnableControls()这样的方法来反转进程。

6

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