すべてのイベントについて、イベントハンドラーを作成する必要があります。
this.MouseMove += new MouseEventHandler(Home_MouseMove);
this.KeyPress += new KeyPressEventHandler(Home_KeyPress);
すべてのボタンハンドラーをキャプチャする場合は、ボタンごとにイベントハンドラーを作成する必要があります。
良い方法はありますか?
すべてのイベントについて、イベントハンドラーを作成する必要があります。
this.MouseMove += new MouseEventHandler(Home_MouseMove);
this.KeyPress += new KeyPressEventHandler(Home_KeyPress);
すべてのボタンハンドラーをキャプチャする場合は、ボタンごとにイベントハンドラーを作成する必要があります。
良い方法はありますか?
Button
イベントのタイプのすべてのコントロールにイベントを添付できますForm_Load
。さらに良いことに、の呼び出し後のコンストラクター自体でInitializeComponent
。
なぜ「後」?以前に行った場合、添付するフォームを制御できないためです。
foreach(Control c in this.Controls)
{
if(c is Button)
{
// Just an example, mold it to fit your app.
((Button) c).Click += new MouseClickHandler();
}
}
Buttonsを含むコントロールがある場合、そのボタンは;Panel
のForm( "this")コレクションの一部ではないため、これによってイベントがアタッチされないことに注意してください。.Controls
むしろthis.Panel1.Controls
。見る?
これが当てはまる場合は、再帰を使用して各コレクションを反復処理できます。