我想要定义一个双击即使在TreeView上,这样我就能够知道TreeView中的哪个项目被选中并获得他的标题。 我试图得到它的标题的方式让我“MyProject.MenuItem”。 我该如何参考树上的选定项目,确保它不是根目录并获得它的标题? 我做了什么:TreeView双击事件
<TreeView Name="trvMenu" HorizontalAlignment="Left" Height="312" VerticalAlignment="Top" Width="200" MouseDoubleClick="TreeView_MouseDoubleClick" >
<TreeView.ItemTemplate>
<HierarchicalDataTemplate DataType="{x:Type local:MenuItem}" ItemsSource="{Binding Items}">
<TextBlock Text="{Binding Title}" />
</HierarchicalDataTemplate>
</TreeView.ItemTemplate>
</TreeView>
的消息框显示“MyProject.MenuItem”,我想要做的是不显示一个消息框,但要获得所选树视图项目的标题,检查之后没有根
private void TreeView_MouseDoubleClick(object sender, RoutedEventArgs e)
{
if (sender is TreeViewItem)
if (!((TreeViewItem)sender).IsSelected)
return;
TreeViewItem tviSender = sender as TreeViewItem;
MessageBox.Show(trvMenu.SelectedItem.ToString());
}
所以你需要在代码隐藏中访问TreeView的子元素? –
http://stackoverflow.com/questions/24197633/recursively-collapse-all-child-nodes-of-parent-node-in-custom-usercontrol/24197901#24197901 – Sajeetharan
是的,子元素是在运行时添加的,而我想要在代码隐藏中获得他们的头衔。 @RobertLangdon – Yona