通过单击从二维数组获取索引。 WPF

时间:2015-11-25 07:58:19

标签: c# wpf events button

我想知道是否有办法在WPF中以这种方式从二维数组中获取索引。

bt[i, j].Click += Button_Click;

private void Button_Click(object sender, RoutedEventArgs e)
{
    (sender as Button) ???
}

如何点击我点击的按钮?

1 个答案:

答案 0 :(得分:0)

有几种方法。

如果按钮单击处理程序与按钮在同一个类中,您可以搜索它吗?

for (var i = 0; i < count; i++)
  for (var j = 0; j < count; j++)
    if (bt[i, j] == sender)
    {
      // found it
    }

或者您可以设置按钮的标记。

bt[i, j].Click += Button_Click;
bt[i, j].Tag = Tuple.Create(i, j);

另一种方法是为点击处理程序创建一个闭包。

private Action<object, RoutedEventArgs> Button_Click(int i, int j)
{
    return (object sender, RoutedEventArgs e) =>
    {
        (sender as Button) ???
    };
}

bt[i, j].Click += Button_Click(i, j);