【问题标题】:Getting index from two-dimentional array by click. WPF通过单击从二维数组中获取索引。 WPF
【发布时间】:2016-02-27 22:17:01
【问题描述】:

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

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

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

如何获取我点击的按钮的 i,j?

【问题讨论】:

    标签: c# wpf events button


    【解决方案1】:

    有几种方法。

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

    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);
    

    【讨论】:

    • 非常感谢,你很有帮助。 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-25
    • 2021-02-27
    • 1970-01-01
    • 2013-05-02
    • 1970-01-01
    • 2019-01-06
    • 1970-01-01
    相关资源
    最近更新 更多