键枚举C#,AltKey

键枚举C#,AltKey,c#,keyboard,user-input,C#,Keyboard,User Input,三个修改键是Control、Alt和Shift。 在keys枚举中,有Control和ControlKey、Shift和ShiftKey以及Alt,但缺少AltKey Keys.ControlKey指的是实际的Ctrl键,而Keys.Control指的是控件修改。 同样,Keys.ShiftKey指的是实际的移位键,Keys.Shift指的是移位修改 实际的Alt键呢? 它可以自己按下,并且Keys枚举中的相应元素应为Keys.AltKey 您能解释一下键枚举中缺少vlaue Keys.AltK

三个修改键是Control、Alt和Shift。
在keys枚举中,有Control和ControlKey、Shift和ShiftKey以及Alt,但缺少AltKey

Keys.ControlKey指的是实际的Ctrl键,而Keys.Control指的是控件修改。 同样,Keys.ShiftKey指的是实际的移位键,Keys.Shift指的是移位修改

实际的Alt键呢?
它可以自己按下,并且Keys枚举中的相应元素应为Keys.AltKey


您能解释一下键枚举中缺少vlaue Keys.AltKey吗?

我猜缺少Alt键是因为在WinForms开发中,设置快捷键的范例是在字母前面加上
字符,例如
e&xit
。当应用程序运行时,它会自动设置为快捷键命令Alt+X。大多数windows快捷键在开发过程中都是这样设置的,几乎消除了您希望在代码中检测到它的任何原因,或者至少是一个按键事件。也就是说,我个人认为Alt键是可用的。

实际上,Alt键的实际键(而不是修饰符)枚举值是
键。菜单
的值为
18
。这只是一个命名约定。他们决定只对修改器使用
Alt
名称,对非修改器使用
菜单。有趣的是,
Keys.Menu
的文档中说“ALT键”。我们还有
Keys.LMenu
Keys.RMenu