当我想开始一些作业时,我不知道我的方式是对还是错,我将禁用所有控制并在作业完成时再次启用。这是我的代码:
public void EnableControls(bool isenable){
this.BeginInvoke(new MethodInvoker(delegate()
{
foreach (System.Windows.Forms.Control control in this.Controls)
{
control.Enabled = isenable;
}
}));}
使用 :这是表单控件
每个人都可以向我解释这段代码是错的还是对的。当我使用许多线程时,我看到控件无法启用,我不知道为什么。谢谢!
如果要enable/disable
窗体中的所有控件,可以改用form.Enabled
。但是,如果您不想参与启用/禁用某些控件,则可以将所有对Panel
或GroupBox
感兴趣的控件放在Enable/Disable
面板上。至少如果你不能使用Panel
,你的代码在这种情况下很好