KeyEventArgs.KeyStates Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets the state of the keyboard key associated with this event.
public:
property System::Windows::Input::KeyStates KeyStates { System::Windows::Input::KeyStates get(); };
public System.Windows.Input.KeyStates KeyStates { get; }
member this.KeyStates : System.Windows.Input.KeyStates
Public ReadOnly Property KeyStates As KeyStates
Property Value
The state of the key.
Examples
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;
}
' A bitwise AND operation is used in the comparison.
' e is an instance of KeyEventArgs.
' btnDown is a Button.
If (e.KeyStates And KeyStates.Down) > 0 Then
btnDown.Background = Brushes.Red
Remarks
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.