0

いくつかのジョブを開始したいときに正しいか間違っているかわかりません。すべての制御を無効にし、ジョブが完了したときに再度有効にします。これは私のコードです:

public void EnableControls(bool isenable){
this.BeginInvoke(new MethodInvoker(delegate()
{   
    foreach (System.Windows.Forms.Control control in this.Controls)
    {
        control.Enabled = isenable;
    }
}));}

と:これはフォームコントロールです

このコードが間違っているか正しいかは誰でも説明できます。多くのスレッドを使用すると、コントロールを有効にできないことがわかり、理由がわかりません。ありがとう !

4

1 に答える 1

0

enable/disableフォーム内のすべてのコントロールが必要な場合は、form.Enabled代わりに使用できます。ただし、有効化/無効化に参加したくないコントロールがある場合は、PanelまたはGroupBoxおよびEnable/Disableパネルに関心のあるすべてのコントロールを配置できます。そして、少なくとも使用できない場合Panelは、この場合のコードは問題ありません

于 2012-11-30T10:52:57.143 に答える