在我的wpf窗口中,我有一个图像按钮。有没有人知道如何为这个按钮分配一个快捷方式,如“Cntrl + O”。
我可以点击“_”来点击普通按钮。
<Button Margin="89,73,114,106" Name="button1" Click="button1_Click">
<StackPanel Name="_StackPanel">
<Image Source="image.png" ></Image>
</StackPanel>
</Button>
答案 0 :(得分:1)
在WPF中,一般键盘快捷键(与Alt访问键的特殊情况不同)未分配给按钮,它们被分配给操作。如果同时需要按钮(或菜单项,多个按钮等)和键命令,则可以对两者使用单个命令。对于自定义RoutedCommand,您可以指定KeyGestures来触发命令:
public static RoutedCommand MyCommand { get; private set; }
static Window1()
{
MyCommand = new RoutedCommand("MyCommand", typeof(Window1), new InputGestureCollection { new KeyGesture(Key.O, ModifierKeys.Control) });
}
public Window1()
{
InitializeComponent();
CommandBindings.Add(new CommandBinding(MyCommand, (_, e) => MessageBox.Show("Command fired")));
}
然后还将其指定为Button的命令:
<Button Content="Click Me" Command="{x:Static local:Window1.MyCommand}"/>