KeyStates Enumeration
Collapse the table of content
Expand the table of content

KeyStates Enumeration


Specifies constants that define the state of a key.

Namespace:   System.Windows.Input
Assembly:  PresentationCore (in PresentationCore.dll)

public enum KeyStates

Member nameDescription

The key is pressed.


The key is not pressed.


The key is toggled.

The KeyStates class is a bit field (flagwise) enumeration. Therefore, a key can be in multiple states. For example, a key could be in the Down state as well as in the Toggled state. Use bit operations to determine the exact state or states the key is in.

The following example changes the color of a Button if the KeyStates of the key passed in the KeyEventArgs is Down. The state of the key is determined by using a bitwise AND operation. The same technique can be used to determine whether a key has multiple states, such as being in the Toggled state and the Down state.

// A bitwise AND operation is used in the comparison.
// e is an instance of KeyEventArgs.
// btnDown is a Button.
if ((e.KeyStates & KeyStates.Down) > 0)
    btnDown.Background = Brushes.Red;

.NET Framework
Available since 3.0
Return to top
© 2015 Microsoft