wpf menu 菜单 快捷键

界面快捷键资源

Ctrl+F F3可加入其它,自行定义

Page可改为Windows

xaml文件

<Style TargetType="{x:Type DataGrid}">

<Setter Property="ContextMenu">

<Setter.Value>

<ContextMenu StaysOpen="true">

<MenuItem Header="Copy" Command="{x:Static ApplicationCommands.Copy}">

</MenuItem>

</ContextMenu>

</Setter.Value>

</Setter>

</Style>

<Page.Resources>

<RoutedUICommand x:Key="F3" Text="查找内容"/>

<RoutedUICommand x:Key="Search" Text="查找内容"/>

</Page.Resources>

<Page.InputBindings>

<KeyBinding Gesture="F3" Command="{StaticResource Search}" />

<KeyBinding Gesture="Ctrl+F" Command="{StaticResource Search}"/>

</Page.InputBindings>

<Page.CommandBindings>

<CommandBinding Command="{StaticResource Search}" Executed="CommandBindingSearch_Executed"/>

<CommandBinding Command="{StaticResource F3}" Executed="CommandBindingSearch_Executed"/>

</Page.CommandBindings>

cs文件

private void CommandBindingSearch_Executed(object sender, ExecutedRoutedEventArgs e)

{

//执行查找

}

wpf button左键菜单

ContextMenu cmnu = new ContextMenu();

cmnu.Style = null;//可从字典读取

MenuItem item = new MenuItem() { Name = "mnuOpen", Header = "Open" };

item.Click += MenuItem_Click;

cmnu.Items.Add(item);

item = new MenuItem() { Name = "mnuClose", Header = "Close" };

item.Click += MenuItem_Click;

cmnu.Items.Add(item);

btn.Click += (bn, ev) =>

{

cmnu.Tag = btn.Tag;

cmnu.PlacementTarget = btn;

cmnu.Placement = System.Windows.Controls.Primitives.PlacementMode.Right;

cmnu.IsOpen = true;

//或者 //dg可以改为其它的控件或直接设置ContextMenu

//dg.ContextMenu.Tag = btn.Tag;

//dg.ContextMenu.PlacementTarget = btn;

//dg.ContextMenu.Placement = System.Windows.Controls.Primitives.PlacementMode.Right;

//dg.ContextMenu.IsOpen = true;

};

btn.Initialized += (o1, e1) => { btn.ContextMenu = null; };

原文链接:https://blog.csdn.net/weixin_53370274/article/details/116518680

相关推荐
self_myth16 小时前
[特殊字符] 深入理解操作系统核心特性:从并发到分布式,从单核到多核的全面解析
windows·macos·wpf·harmonyos
c#上位机17 小时前
wpf之TextBlock
c#·wpf
玉面小君2 天前
从 WPF 到 Avalonia 的迁移系列实战篇6:ControlTheme 和 Style区别
c#·wpf·avalonia
c#上位机2 天前
wpf之Border
c#·wpf
SunflowerCoder2 天前
WPF迁移avalonia之图像处理(一)
图像处理·wpf·avalonia
周杰伦fans2 天前
WPF中的DataContext以及常见的绑定方式
wpf
没有bug.的程序员3 天前
Redis 数据结构全面解析:从底层编码到实战应用
java·数据结构·redis·wpf
somethingGoWay3 天前
wpf 自定义输入ip地址的文本框
wpf
秋月的私语4 天前
Wpf程序屏幕居中问题修复全记录
wpf
我要打打代码4 天前
WPF启动窗体的三种方式
wpf