我正在开发一个带有树视图控件的 WPF 应用程序。我为双击事件创建了事件。但是每当我双击一个 TreeViewItem 根元素时,就会被选中。
这是 XAML
<HierarchicalDataTemplate x:Key="TreeViewItem" ItemsSource="{Binding Children}">
<StackPanel Orientation="Horizontal">
<TextBlock Margin="2" Text="{Binding Name}" />
</StackPanel>
</HierarchicalDataTemplate>
<TreeView
ItemTemplate="{StaticResource TreeViewItem}"
ItemsSource="{Binding Hosts}"
MouseDoubleClick="TreeView_MouseDoubleClick">
这是我的代码。
private void TreeView_MouseDoubleClick(object sender, MouseButtonEventArgs e)
{
var selectedItem = sender.SelectedItem;
}
这是我的 TreeView 结构示例
CountryA
CityA
Street1
Street2
CityB
Street3
CountryB
CityC
现在,如果我双击 Street1,那么在事件处理程序中 sender.SelectedItem 是 CountryA。如果我双击 CityA 或 CityB,也会发生同样的情况。有什么问题?