KeyEventArgs.KeyStates Property

 
System_CAPS_noteNote

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Gets the state of the keyboard key associated with this event.

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

public KeyStates KeyStates { get; }

Property Value

Type: System.Windows.Input.KeyStates

The state of the key.

A key can be in both the up and toggled states or the down and toggled states. For this reason, determining whether a key is up or down is not as simple as checking the KeyStates value as a numeric value. Instead, you should check the value by treating it as a flag enumeration. Use an AND comparison of the first bit. Alternatively, use the helper properties IsUp, IsDown, and IsToggled to determine whether a given key is up, down, or toggled.

The following example checks whether a key associated with an instance of KeyEventArgs is down by performing a bitwise AND comparison on the KeyStates of the key and the Down enumeration value.

// 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
Show: