[C#-WPF] 如何绑定快捷键

网上一堆WPF绑定快捷键教程都不是一个东西的,调用WinAPI麻烦到飞起。
但是,WPF是非常非常非常(重要的事说三遍)简单的。
下面我来告诉大家怎么简简单单绑定快捷键

网上一堆WPF绑定快捷键教程都不是一个东西的,调用WinAPI麻烦到飞起。
但是,WPF是非常非常非常(重要的事说三遍)简单的。
下面我来告诉大家怎么简简单单绑定快捷键

1.你需要有一个窗口,不能是Frame里面的Page(因为没有窗口句柄233)。

就像这样

2.然后呢,在标签里面写上(总有人写着标签外,然后VisualStudio直接Error给你看)

<Window.Resources>
        <RoutedUICommand x:Key="你快捷键按下后调用的事件名字" Text="你快捷键按下后调用的事件名字"/>
        <RoutedUICommand x:Key="你快捷键按下后调用的事件名字" Text="你快捷键按下后调用的事件名字"/>
</Window.Resources>

(有多少个快捷键要注册就写多少个)这里是注册一个静态资源

3.继续写

    <Window.InputBindings>
        <KeyBinding Gesture="快捷键组合,例如下面的例子" Command="{StaticResource 你快捷键按下后调用的事件名字}" />
        <KeyBinding Gesture="Control+F11" Command="{StaticResource StopPlayMIDI}" />
    </Window.InputBindings>

请务必注意,如果这里的事件名字与第二步的不同,是屁作用没有的。这里是注册快捷键

4.坚持住,最后一步。写下

    <Window.CommandBindings>
        <CommandBinding Command="{StaticResource PlayMIDI}" CanExecute="PlayMIDI"></CommandBinding>
        <CommandBinding Command="{StaticResource StopPlayMIDI}" CanExecute="StopPlayMIDI"></CommandBinding>
    </Window.CommandBindings>

这里就是将静态资源绑定事件了,名字一样。

到这里就大功告成了,就像下面一样

完成品

执行测试吧

原创文章,作者:悠静萝莉,如若转载,请注明出处:https://www.ksand.cn/p/340

发表评论

电子邮件地址不会被公开。 必填项已用*标注