Keys.Shift和Keys.ShiftKey之间的区别

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

事件似乎总是发送Keys.Shift,但是有没有使用Keys.ShiftKey的情况?

(同样的问题适用于Keys.Control和Keys.ControlKey)

感谢您的任何意见。

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

Keys.ShiftKey指的是实际的shift键,而Keys.Shift指的是移位修改本身。 Keys.ShiftKey可以像其他键代码一样用于检查按键,但是您无法检查是否按下了Keys.Shift ,因为它表示状态而不是对象。 我希望这是有道理的。

看这里:

http://msdn.microsoft.com/en-us/library/system.windows.forms.keys.aspx