本文介绍了如何添加WPF TreeView Node Click事件以获取节点值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在WPF
中有一个TreeView
。现在我想要获取TreeView
节点单击事件,这样我就可以获取用户单击的节点的值。
代码如下:
<Grid Height="258" Width="275">
<TreeView Height="258" HorizontalAlignment="Left" Name="treeView1" VerticalAlignment="Top" Width="275">
</TreeView>
</Grid>
我已经从C#代码填充了这个TreeView
。我需要向C#代码中写入什么事件方法才能获取用户在C#代码中单击的节点值。
请帮帮我。
这里是c#。
TreeViewItem treeItem = null;
treeItem = new TreeViewItem();
treeItem.Header = "Name";
这样,我填充了TreeView。
推荐答案
由于没有可用于TreeViewItem或TreeView的Click事件,因此以下是相同
的可能解决方法您有两个来自C#代码的选项
使用MouseLeftButtonUp
,它将在每次在项目上释放鼠标左键时触发,类似于单击
void preparemethod()
{
...
TreeViewItem treeItem = null;
treeItem = new TreeViewItem();
treeItem.Header = "Name";
treeItem.MouseLeftButtonUp += treeItem_MouseLeftButtonUp;
}
void treeItem_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
{
//your logic here
}
或使用选定元素作为触发器,在单击选定元素时可能不会触发
void preparemethod()
{
...
TreeViewItem treeItem = null;
treeItem = new TreeViewItem();
treeItem.Header = "Name";
treeItem.Selected += treeItem_Selected;
}
void treeItem_Selected(object sender, RoutedEventArgs e)
{
//your logic here
}
在这两种方法中,发送方都是已单击的节点。您可以使用AS
示例
void treeItem_Selected(object sender, RoutedEventArgs e)
{
TreeViewItem item = sender as TreeViewItem;
//you can access item properties eg item.Header etc.
//your logic here
}
这篇关于如何添加WPF TreeView Node Click事件以获取节点值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!