私は9つの無効なボタンを持っています。次のようなことをする代わりに、それらを一度に有効にする方法はありますか:
button1.Enabled=True
button2.Enabled=True
...
多分これはうまくいくでしょう:
foreach(Button b in Controls){
b.Enabled = true;
}
ここで、 bで表されるすべてのボタンを選択し、それらすべてを有効にしました
それが役に立てば幸い
それらを適切にグループ化したと仮定すると...
foreach(var button in parent.Controls.OfType<Button>())
button.Enabled = true;
button1.enabled = button2.enabled = ... = true
Linq はそれをとてもきれいにします:
Controls.OfType<Button>().ToList().ForEach(c => c.Enabled = true);
private void EnableButtons(bool enabled)
{
var myButtons = new Button[] { button1, button2, button3 };
foreach (var x in myButtons)
{
x.Enabled = enabled;
}
}
これにより、必要に応じてボタン配列にボタンを追加したり、ボタン配列からボタンを削除したりできます。nachogsiri のソリューションは、フォームのすべてのボタンを有効/無効にしたい場合に最適です。特定の関連ボタンのみである場合は、より詳細に制御できます。