关于c#:Keys.Shift和Keys.ShiftKey之间的区别

Difference between Keys.Shift and Keys.ShiftKey

在我的应用程序中,我检测何时按下了键,并查看修饰符是否为Shift键,但是Keys枚举器具有Shift和ShiftKey。

似乎该事件始终在发送Keys.Shift,但是是否会使用Keys.ShiftKey?

(并且相同的问题适用于Keys.Control和Keys.ControlKey)

感谢您的任何投入。


Keys.Shift是修饰键(用于组合键),而Keys.ShiftKey是常规键代码,与Keys枚举中的大多数其他键一样。


Keys.ShiftKey代表实际的换档键,而Keys.Shift代表换档修改本身。 可以像其他键代码一样使用Keys.ShiftKey来检查是否按下,但是您不能检查Keys.Shift是否被按下,因为它表示状态而不是对象。 我希望这是有道理的。

看这里:

http://msdn.microsoft.com/zh-CN/library/system.windows.forms.keys.aspx