应用程序的全局热键快捷方式

时间:2011-04-08 22:14:04

标签: c# wpf visual-studio-2010

我一直试图解决这个问题,我正在使用WPF来构建我的应用程序。我想为应用程序创建一个快捷键(例如CTRL + ALT + 3)。我尝试过在互联网上找到的所有内容,但没有成功。

我想使用热键将应用程序最小化到我稍后将创建的托盘图标。

现在的问题我无法弄清楚如何在Visual Studio 2010上使用C#WPF来实现这一目标。

2 个答案:

答案 0 :(得分:1)

我在WPF应用程序中完成了此操作。我在主窗口使用了一些代码隐藏。

创作者是:

    public MainWindow()
    {
        InitializeComponent();

        this.AddHandler(Control.PreviewKeyDownEvent, new RoutedEventHandler(MyPreviewKeyDown), true);
    }

处理程序以:

开头
    private void MyPreviewKeyDown(object sender, RoutedEventArgs e)
    {
        KeyEventArgs ke = e as KeyEventArgs;
        if (ke.Key == Key.Oem5 && ke.KeyboardDevice.Modifiers == ModifierKeys.Control)
        {

如果需要修改键组合,可以使用如下表达式:

(int)ke.KeyboardDevice.Modifiers == (int)ModifierKeys.Control + (int)ModifierKeys.Alt

答案 1 :(得分:0)

使用codeproject中的HookManager,然后使用它的KeyDown事件。