为什么我不能在程序外使用键绑定?

时间:2021-08-01 21:14:13

标签: c# wpf keypress topmost minimized

我正在尝试制作程序来打开其他应用程序,打开这个程序我不想使用键绑定和隐藏。

        private void Window_KeyDown(object sender, KeyEventArgs e)
        {
            if (Dark == 0)
            {
                if (e.Key == Key.LeftCtrl)
                {
                    if (e.Key == Key.LWin)
                    {
                        this.Topmost = true;
                        Dark = 1;
                    }
                }
            }
            else if(Dark == 1)
            {
                if (e.Key == Key.LeftCtrl)
                {
                    if (e.Key == Key.LWin)
                    {
                        this.Topmost = false;
                        Dark = 0;
                        WindowState = WindowState.Minimized;
                    }
                }
                else if (e.Key == Key.Escape)
                {
                    this.Topmost = false;
                    Dark = 0;
                    WindowState = WindowState.Minimized;
                }
            }

在程序之外,keybinds 根本不起作用,但如果程序是打开的,那么它们起作用,为什么?

1 个答案:

答案 0 :(得分:2)

可以参考我的类,用于全局钩子键事件 https://github.com/nhochjkaru/JEOrbwalk/blob/master/UserActivityHook.cs

声明:UserActivityHook actHook; 主要功能:

actHook = new UserActivityHook(); 
actHook.KeyDown += new KeyEventHandler(Window_KeyDown);