Share via

KeyRoutedEventArgs Class


Provides event data for the KeyUp and KeyDown routed events.

public ref class KeyRoutedEventArgs sealed : RoutedEventArgs
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class KeyRoutedEventArgs final : RoutedEventArgs
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
public sealed class KeyRoutedEventArgs : RoutedEventArgs
Public NotInheritable Class KeyRoutedEventArgs
Inherits RoutedEventArgs
Object Platform::Object IInspectable RoutedEventArgs KeyRoutedEventArgs


Button input is mapped to different key values for various devices, including game controllers.

This table provides the mapping detail for a game controller.



GamepadDPadUp/Down/Left/RightGamepadDPadUp/Down/Left/Right or NavigationUp/Down/Left/Right
GamePad Joystick/ThumbstickGamepadLeftThumbstickButton/Up/Down/Left/Right or GamepadRightThumbstickButton/Up/Down/Left/RightGamepadLeftThumbstickButton/Up/Down/Left/Right or GamepadRightThumbstickButton/Up/Down/Left/Right or NavigationUp/Down/Left/Right
Gamepad TriggerGamePadRightTrigger/LeftTriggerGamePadRightTrigger/LeftTrigger
Gamepad Bumper/ShoulderGamePadRightShoulder/LeftShoulderGamePadRightShoulder/LeftShoulder
Gamepad Menu buttonGamepadMenuGamepadMenu or NavigationMenu
Gamepad View buttonGamepadViewGamepadView or NavigationView



Gets a unique ID for the input device that generated this key event (not supported for all input devices).


Gets or sets a value that marks the routed event as handled. A true value for Handled prevents most handlers along the event route from handling the same event again.


Gets the virtual-key associated with the event.

Depending on the input device, this can be a mapped value. For raw, unmapped event data, see the OriginalKey property.


Gets a structure value that reports various system-detected characteristics of the key press, including repeat count and menu status.


Gets the original, unmapped virtual-key associated with the event.

Depending on the input device, the input button might be mapped to a different key value. For the mapped event value, see the Key property.


Gets a reference to the object that raised the event. This is often a template part of a control rather than an element that was declared in your app UI.

(Inherited from RoutedEventArgs)

Applies to

See also