如何在运行时将事件添加到按钮列表

Rye*_*Rye 2 c# events button

我正在尝试在运行时创建按钮。我的问题是我应该如何在运行时模式下向每个按钮添加一个事件?

例如:

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});
        }
    }
Run Code Online (Sandbox Code Playgroud)

图片

Nis*_*sim 5

btn.Click += yourMethod;

private void yourMethod(object sender, EventArgs e)
{
    // your implementation
    Button btn = sender as Button;
    if (btn != null)
    {
        //use btn
    }
}
Run Code Online (Sandbox Code Playgroud)

如果要在声明按钮时添加事件,请使用:

btn.Click += delegate
{
     //your implementation
};
Run Code Online (Sandbox Code Playgroud)