我正在使用.net格式的wpf树。所以,我没有任何xaml。我只是在代码中做所有事情。我正在使用分层数据模板将我的数据绑定到wpftree。
我正在尝试找到一种方法来获取树中所选节点的TreeViewItem。我尝试在TreeView上的SelectedItemChanged事件上注册一个EventHandler,但是在那个处理程序中我只获取了相关的数据对象。由于我的树是虚拟的,因此ItemContainerGenerator.ContainerFromItem不起作用。
当我在StackOverflow上搜索时,一个建议就是收听TreeViewItem.Selected事件。 但我找不到在代码中执行此操作的方法。 (我没有xaml)。
非常感谢任何帮助。
谢谢。答案 0 :(得分:0)
您可以做的是每次添加处理程序时将处理程序附加到每个控件
void AddTreeViewItem()
{
TreeView t = new TreeView();
TreeViewItem treeItem = new TreeViewItem();
t.Items.Add(treeItem);
treeItem.Selected += DoSomethingHere;
}
private void DoSomethingHere(object sender, RoutedEventArgs e)
{
Console.WriteLine("Tree Item Selected");
}