我想将上下文菜单添加到 TreeView。我可以通过以下代码做到这一点:
<TreeView x:Name="treeView" Grid.Row="1" Grid.Column="0" ItemsSource="{Binding Classes}"
commandBehaviors:MouseDoubleClick.Command="{Binding TreeMouseDoubleClick}"
commandBehaviors:MouseDoubleClick.CommandParameter="{Binding ElementName=treeView, Path=SelectedItem}"
Margin="3,3,3,3" ContextMenu="{Binding ContextMenu, Mode=OneWay}">
...
我的 TreeView 只有两个级别。班级和学生。
我现在的问题是,我的 TreeView 有一个 HierarchicalDataTemplate,如果右键单击在类节点上,我只想显示 contextMenu
这看起来像
<HierarchicalDataTemplate DataType="{x:Type Entity:Class}" ItemsSource="{Binding Pupils}">
<Label Content="{Binding Name}"/>
</HierarchicalDataTemplate>
<DataTemplate DataType="{x:Type Entity:Pupil}">
<Label Margin="0">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Label Grid.Column="0" Content="{Binding Lastname}" Margin="0"/>
<Label Grid.Column="1" Content="{Binding Firstname}" Margin="0"/>
</Grid>
</Label>
</DataTemplate>
我该如何解决这个问题?