我打算在数据库中保存键盘快捷键。用户按下快捷键时,应打开特定窗口。 与Visual Studio键盘快捷键分配窗口相同的功能,
我应该在数据库中存储哪个组合键?
我正在听以下方法勾住按键
protected override void OnKeyUp(KeyEventArgs e)
{
// Here I'm gonna hook the keypress
}
如果用户按下CTRL + W
(与控制键的任何组合键)
e.KeyboardDevice.Modifiers
为Control
,e.Key
为W
如果用户按下,ALT + W
(与Alter Key的任何组合键)
e.KeyboardDevice.Modifiers
为Alt
,e.Key
为System
,e.SystemKey
为W
如果用户按下,CTRL + Shift + W
它在两个后续的OnKeyUp事件中给出了键组合
没有共同的模式。 我应该挂哪个组合?我应该在数据库中存储哪种组合?
答案 0 :(得分:3)
查看KeyGesture课程。您可以保存和解析字符串中的手势,也可以在OnKeyUp
方法中轻松比较它们,如下所示:
if (e.Key == Gesture.Key && Gesture.Modifiers == Keyboard.Modifiers)
//do stuff...