WPF中鼠标右键菜单栏实现(ContextMenu)
程序员文章站
2022-07-13 21:48:00
...
WPF控件右侧状态栏实现
ContextMenu
WPF中ContextMenu表示鼠标右键菜单栏,适用于WPF任何控件。ContextMenu属性默认实现,鼠标右键点击后显示菜单栏的功能,此时菜单栏选项默认都是响应点击的。故使用ContextMenu属性时只需要安心实现菜单栏的样式和功能即可。
常用的通过ContextMenu实现右键菜单栏的方式有两种。
1、在Resources中声明,在控件中使用
- 在Window.Resources中声明具体的ContextMenu
<Window.Resources>
<ContextMenu x:Key="ContextMenu">
<MenuItem Name="Delete" Header="删除" Click=“Delete_Click”>
<MenuItem.Icon/>
</MenuItem>
<Separator></Separator>
<MenuItem Name="Copy" Header="复制" Click=“Copy_Click”/>
<Separator></Separator>
<MenuItem Name="Paste" Header="粘贴" Click=“Paste_Click”/>
</ContextMenu>
</Window.Resources>
- 在控件中使用ContextMenu。可以在任意自己想要的控件上都绑定。
<GroupBox ContextMenu="{StaticResource ContextMenu}">
<StackPanel ContextMenu="{StaticResource ContextMenu}">
</StackPanel >
</GroupBox>
<StackPanel ContextMenu="{StaticResource ContextMenu}">
</StackPanel >
2、在控件中直接声明
<StackPanel>
<StackPanel.ContextMenu>
<ContextMenu>
<MenuItem Name="Delete" Header="删除" Click=“Delete_Click”/>
<Separator></Separator>
<MenuItem Name="Copy" Header="复制" Click=“Copy_Click”/>
<Separator></Separator>
<MenuItem Name="Paste" Header="粘贴" Click=“Paste_Click”/>
</ContextMenu>
</StackPanel.ContextMenu>
<TextBox></TextBox>
</StackPanel>
上一篇: Linux内核中关于字符串的相关操作