0
我已经给我的WPF的ListView的上下文菜单:为WPF列表视图定义上下文菜单
<TreeView ContextMenuOpening="TreeView_ContextMenuOpening">
<TreeView.ContextMenu>
<ContextMenu>
<MenuItem Name="NewInputMenuItem" Header="Add" Click="AddInputMenuItem_Click" />
<MenuItem Name="RemoveInputMenuItem" Header="Remove" Click="RemoveInputMenuItem_Click" />
</ContextMenu>
</TreeView.ContextMenu>
<!-- etc... -->
</TreeView>
,因为我想无论在显示相同的上下文菜单中,我定义的TreeView
而非TreeViewItem
上下文菜单是否选择了一个项目,但是我希望仅当用户右键单击某个项目时,才能启用“删除”菜单项,而不仅仅是菜单中的空白区域。
我目前处理这个的方式是使用TreeView
(在TreeView_ContextMenuOpening
事件处理程序中)的选定项属性,但是问题是右键单击树视图项会打开该树的上下文菜单查看而不是更改树视图项目的选定状态。
另外,我不禁想,所有的上面是非常联合国WPF样,所以:
- 我怎样才能让这个当用户在树视图项鼠标右击,该项目被选中。
- 有没有更好的方法来实现上述?