我想在運行時創建按鈕。我的問題是,我應該如何在運行時模式下爲每個按鈕添加一個事件?如何在運行時將一個事件添加到按鈕列表
例如:
Button btn;
int i =0;
int j =0;
List<Button> listBTN = new List<Button>();
private void button1_Click(object sender, EventArgs e)
{
btn = new Button();
btn.Location = new Point(60 + i, 90);
btn.Size = new Size(50, 50);
btn.Name = "BTN";
listBTN.Add(btn);
i = i + 50;
foreach(Button b in listBTN){
this.Controls.AddRange(new Button[] {b});
}
}
,這只是增加一個相同的事件給所有的按鈕。我試圖弄清楚的是如何爲每個按鈕設置一個獨特的事件。 – Rye 2010-08-31 09:32:33
重用的事件處理程序方法。事件實例是使用按鈕的每個實例創建的。 – aqwert 2010-08-31 09:37:17
爲此 - 給每個按鈕一個唯一的名稱,並在事件處理程序中使用btn.Name知道它是哪一個,或使用'AnonymousMethods': btn.Click + =新的委託{/ /你的實現'}; – Nissim 2010-08-31 09:37:30