我有一个TreeView
设置,以便每个TreeViewItem
都将右键单击上下文菜单应用为Style
. 就像是:
<Grid.Resources>
<ContextMenu x:Key="contextMenu">
<MenuItem Header="Save" IsEnabled="{Binding Path=Saveable}"/>
<MenuItem Header="Copy" IsEnabled="{Binding Path=Copyable}"/>
<MenuItem Header="Remove" IsEnabled="{Binding Path=Removeable}"/>
</ContextMenu>
<Style TargetType="TreeViewItem">
<Setter Property="ContextMenu" Value="{StaticResource contextMenu}" />
</Style>
</Grid.Resources>
Saveable、Copyable 和 Removeable 是来自用作TreeViewItem
.
我正在寻找的是当用户点击 a 时MenuItem
,它会点击所选对象的适当方法。因此,单击“保存”MenuItem
会调用object.Save()
、“复制”调用object.Copy()
等。但我不确定语法会是什么样子,或者这个想法在典型的 WPF 样式方面是否实际上是可以接受的。我知道我可以在包含的窗口中创建一个新的事件处理程序,但我更喜欢所选项目本身来处理事件。
想法?
谢谢!