我在WPF中有一个TreeView,它包含一个主节点和5个子节点。一旦主节点被展开,我们就得到子节点。现在展开子节点,我们得到一些值。这是我在WPF中的TreeView的表示。在这一个中,我想得到已经展开的5个子节点之一的值。
这是我正在尝试的代码。
void getTreeView()
{
TreeViewItem treeItem = null;
treeItem = new TreeViewItem();
treeItem.Header = "Name";
treeItem.MouseLeftButtonUp += treeItem_MouseLeftButtonUp;
}
void treeItem_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
{
TreeViewItem item = sender as TreeViewItem;
foreach(TreeViewItem child in item.Items) {
string childNode=child.Header as string;
}
}
但是在childNode
中,我得到的是所有5个子节点的值,而我需要的是所选节点的值。
请帮帮我
2条答案
按热度按时间iugsix8n1#
如果只想获取选定节点,请检查TreeViewItem的**
IsSelected
**属性,如下所示:kpbwa7wx2#
我刚刚让下面的代码工作。发送者最终是整个TreeView控件,而不仅仅是选定的TreeViewItem。