检测从阵列中单击的按钮

本文关键字:按钮 单击 阵列 检测 | 更新日期: 2023-09-27 18:25:44

我有一个2d按钮阵列,每个按钮都链接到同一事件处理程序:

    nb.Click += new EventHandler(this.nb_click);
    b[i][j] = nb;
    this.Controls.Add(b[i][j]);
    private void nb_click(object sender, EventArgs e)

我希望它能让nb_click检测到按下了哪个按钮。有办法解决这个问题吗?

解决方案:我必须先为按钮设置名称,在本例中为nb。名称=。。。谢谢,我刚刚意识到。

检测从阵列中单击的按钮

这就是sender参数在EventHandler中的作用。因此,只需为这个按钮关联一个唯一的ID,就可以识别它。然后将sender对象参数强制转换为一个按钮并查找id。然后相应地执行操作。

在事件处理程序中,sender参数将是对所单击按钮的引用。