我有一个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 样式方面是否实际上是可以接受的。我知道我可以在包含的窗口中创建一个新的事件处理程序,但我更喜欢所选项目本身来处理事件。
想法?
谢谢!