C#在"代码创建"按钮中应用单击事件侦听器

Sha*_*asi 4 c# onclick button onclicklistener

我按代码创建了按钮:

        List<Button> buttons = new List<Button>();
        ArrayList myTopics = sqlFunction.loadTopicList();
        for (int i = 0; i < myTopics.Count; i++)
        {
            Button newButton = new Button();
            buttons.Add(newButton);
            panel1.Controls.Add(newButton);
         }
Run Code Online (Sandbox Code Playgroud)

现在我必须将click事件监听器添加到这些按钮.我需要的是:

         if(ClickedButton.Text =="something")
          {
              //do something
          }
Run Code Online (Sandbox Code Playgroud)

在UI中查看时,此表单仅包含空面板 - panel1.你能否告诉我如何添加这个点击事件?

Lui*_*eri 6

因为我在手机上,所以我不太清楚按钮上的事件.但是,你应该做这样的事情:

(假设您使用的是Winforms)

在你的循环中:

newButton.Click += new EventHandler(do_something);
Run Code Online (Sandbox Code Playgroud)

循环外:

void do_something(object sender, EventArgs e)
{
    var btn = sender as Button;
    if(btn.Text == "something")
    {
        //now, do something cool  
    }
}
Run Code Online (Sandbox Code Playgroud)