我知道使用_而不是&,但我正在查看所有Ctrl+类型的快捷方式.
Ctrl+ Z用于撤消,Ctrl+ S用于保存等.
在WPF应用程序中实现这些是否有"标准"方法?或者是自己滚动的情况并将它们连接到任何命令/控制?
当我的节目不在焦点时,我需要捕捉按键.(即Ctrl+ Alt+ J)并在我的程序中触发一个事件.
到目前为止,我发现这个dll似乎是正确的路径"
[DllImport("user32.dll")]private static extern int RegisterHotKey(IntPtr hwnd, int id,int fsModifiers, int vk);
[DllImport("user32.dll")] private static extern int UnregisterHotKey(IntPtr hwnd, int id);
Run Code Online (Sandbox Code Playgroud) 我希望在我的新应用程序中有多个全局热键(从Windows中的任何位置控制应用程序),我在网络上找到的所有给定的源/解决方案似乎提供了一种跛行的解决方案(或者解决方案)仅适用于一个g.hotkey,或运行时在屏幕上创建令人讨厌的鼠标延迟的解决方案).
这里有没有人知道可以帮助我实现这一目标的资源,我可以从中学到什么?什么?
谢谢 !:)
我需要为Window创建输入绑定.
public class MainWindow : Window
{
public MainWindow()
{
SomeCommand = ??? () => OnAction();
}
public ICommand SomeCommand { get; private set; }
public void OnAction()
{
SomeControl.DoSomething();
}
}
Run Code Online (Sandbox Code Playgroud)
<Window>
<Window.InputBindings>
<KeyBinding Command="{Binding SomeCommand}" Key="F5"></KeyBinding>
</Window.InputBindings>
</Window>
Run Code Online (Sandbox Code Playgroud)
如果我使用一些CustomCommand初始化SomeCommand:ICommand它不会触发.从不调用SomeCommand属性get().
首先,我想知道Global Hotkeys和Hook Global Keystrokes之间有什么区别,并将它们用作热键?
其次,我想在我的应用程序中使用全局热键,它将有两个部分:1.我将创建一个窗口,向用户显示他现在按下的键,使用KeyUp功能,它将保存组合.2.按下步骤1的组合时,将调用特定功能
用户可以同时拥有多个热键组合,每个热键组合调用不同的功能.
我在互联网上找到了很多解决方案/解释/但我不知道哪个最符合我的需求 - 这就是我需要你帮助的地方.
以下是我发现的一些(可能全部)解决方案/解释/内容:
在WPF/C#中使用全局键盘钩子(WH_KEYBOARD_LL)
https://gist.github.com/Ciantic/471698
http://www.dreamincode.net/forums/topic/180436-global-hotkeys/
http://msdn.microsoft.com/en-us/library/windows/desktop/dd375731.aspx
http://www.codeproject.com/Tips/274003/Global-Hotkeys-in-WPF
http://www.pinvoke.net/default.aspx/user32/RegisterHotKey.html
如何使用WPF和.NET 3.5注册全局热键来说CTRL + SHIFT +(LETTER)?
非常感谢你的帮助
我是否可以知道是否可以使用键盘快捷键而不是单击它来最大化系统托盘中的 Windows 窗体应用程序?
我目前正在尽量减少使用这段代码
//Minimize to Tray with over-ride for short cut
private void MinimiseToTray(bool shortCutPressed)
{
notifyIcon.BalloonTipTitle = "Minimize to Tray App";
notifyIcon.BalloonTipText = "You have successfully minimized your app.";
if (FormWindowState.Minimized == this.WindowState || shortCutPressed)
{
notifyIcon.Visible = true;
notifyIcon.ShowBalloonTip(500);
this.Hide();
}
else if (FormWindowState.Normal == this.WindowState)
{
notifyIcon.Visible = false;
}
}
Run Code Online (Sandbox Code Playgroud)
因此,我需要一个可以最大化它的键盘快捷键。非常感谢!
我有一个正在运行的C#窗口应用程序,并且即使我的应用程序没有焦点,也想在任何地方按ESC时都将其关闭。我该如何实施?
我发现了一些连接键盘,它是“我不知道并且不理解”的“低级控制”。