我是wpf应用程序的新手,我正在处理应用程序,我已经创建了一个菜单现在我想在短按键ctrl + o,ctrl + n等功能菜单项事件上运行。我该怎么做。请给我详情。
答案 0 :(得分:3)
你可以用以下方式......
<Window x:Class="FocusDemo.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:FocusDemo"
Title="Window1" Height="300" Width="300">
<Window.CommandBindings>
<CommandBinding
Command=
"{x:Static
local:Window1.CustomRoutedCommand}"
Executed="ExecutedCustomCommand"
CanExecute="CanExecuteCustomCommand" >
</CommandBinding>
</Window.CommandBindings>
<Window.InputBindings>
<KeyBinding
Command=
"{x:Static
local:Window1.CustomRoutedCommand}"
Key="S"
Modifiers="Control"/>
</Window.InputBindings>
<Grid>
<!--Your Controls-->
</Grid>
</Window>
/// <summary>
/// Interaction logic for Window1.xaml
/// </summary>
public partial class Window1 : Window
{
public static RoutedCommand CustomRoutedCommand = new RoutedCommand();
public Window1()
{
InitializeComponent();
}
#region
public void ExecutedCustomCommand(object sender, ExecutedRoutedEventArgs e)
{
MessageBox.Show("Ctrl+S");
}
public void CanExecuteCustomCommand(object sender,
CanExecuteRoutedEventArgs e)
{
e.CanExecute = true;
}
#endregion
}
来源:Click here
如果正确
,请不要忘记标记答案答案 1 :(得分:0)
我知道这不是问题的确切答案,但可能像我这样的人正在寻找将任何键盘快捷键放到菜单项(命令按钮)上的方法,比如Alt + O,Alt + N.在这种情况下,您可以在项目名称中的快捷方式字符前放置非字符字符(_)。