1
對於每一個事件我必須寫一個事件處理程序:我怎麼能捕獲所有事件的形式
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
控件附加事件。更好的是,在調用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();
}
}
請注意,如果你有一個Panel
控制在它的按鈕,這將不會對事件重視它,因爲該按鈕是不是表格(「本」)的.Controls
集合的一部分;而是this.Panel1.Controls
。看到?
如果您遇到這種情況,您可以使用遞歸遍歷每個集合。
Thnanks,讓我試試看。 – Alvin 2012-07-13 02:41:57