WPF:将一些数据附加到按钮

本文关键字:按钮 数据 WPF | 更新日期: 2023-09-27 17:56:54

问题:

'我正在使用控件模板填充列表视图。在每个项目的此模板中,将有一个按钮,单击该按钮时需要执行某些操作。

我如何访问生成列表视图项的对象,以便我可以获取某些内容(如 id)。

WPF:将一些数据附加到按钮

DataContext是你的朋友。每个列表项(以及该项中的按钮,如果您尚未覆盖按钮的DataContext)将有一个数据项,用于在DataContext属性中生成该项。

如果要动态创建按钮,则可以使用 Tag 属性来附加数据,或者继承Button类作为My_Button并设置所需的属性,如"userId"

以另一种方式尝试观察单击按钮的Parent属性。

例如:

private void Button_Click(object sender, RoutedEventArgs e)
        {
          Button clickedButton = sender as Button;
          ListViewItem holderItem = clickedButton.Parent as ListViewItem;
          Console.WriteLine("You are clicked the buton in " + holderItem.Name);
        }

或在线解决方案:

private void Button_Click(object sender, RoutedEventArgs e)
            {
              Console.WriteLine("You are clicked the buton in " + ((sender as Button).Parent as ListViewItem).Name);
            }