100个按钮的10x10网格:点击时隐藏按钮(C#)

Sur*_*raj 0 c# events

我有一个100x按钮的10x10网格,我想在点击时隐藏一个按钮.

有没有办法将此应用于所有按钮?即,当单击任何按钮时,该按钮被隐藏.我使用表格布局来安排C#中的100个按钮.

我也将它添加到表格布局中,请告诉我如何将这些按钮添加到该10x10表格中.如何命名按钮对象以及如何将所有执行操作的单个事件添加到自身(即单击时隐藏自身) )

Alb*_*nbo 9

创建100个按钮

foreach (int i in Enumerable.Range(0, 10))
{
    foreach (int j in Enumerable.Range(0, 10))
    {
        Button b = new Button();
        b.Size = new System.Drawing.Size(20, 20);
        b.Location = new Point(i * 20, j * 20);
        b.Click += new EventHandler(anyButton_Click); // <-- all wired to the same handler
        this.Controls.Add(b);
    }
}
Run Code Online (Sandbox Code Playgroud)

并将它们全部连接到同一个事件处理程序

void anyButton_Click(object sender, EventArgs e)
{
    var button = (sender as Button);
    if (button != null)
    {
        button.Visible = false;
    }
}
Run Code Online (Sandbox Code Playgroud)

在事件处理程序你投senderButton,那就是被按下的特定按钮.

  • @ AS-CII,只是为了避免我的大脑发生单调的崩溃. (3认同)