Skip to main content
.NET Framework Class Library
UIElementKeyDown Event

Occurs when a key is pressed while focus is on this element.

Namespace:   System.Windows
Assembly:  PresentationCore (in PresentationCore.dll)
XMLNS for XAML: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation
Syntax
Public Event KeyDown As [%$TOPIC/ms596670_en-us_VS_110_1_0_0_0_0%]
public event [%$TOPIC/ms596670_en-us_VS_110_1_0_1_0_0%] KeyDown
public:
virtual   event [%$TOPIC/ms596670_en-us_VS_110_1_0_2_0_0%]^ KeyDown {
	void add ([%$TOPIC/ms596670_en-us_VS_110_1_0_2_0_1%]^ value);
	void remove ([%$TOPIC/ms596670_en-us_VS_110_1_0_2_0_2%]^ value);
}
abstract KeyDown : IEvent<[%$TOPIC/ms596670_en-us_VS_110_1_0_3_0_0%],
    [%$TOPIC/ms596670_en-us_VS_110_1_0_3_0_1%]>
override KeyDown : IEvent<[%$TOPIC/ms596670_en-us_VS_110_1_0_3_0_2%],
    [%$TOPIC/ms596670_en-us_VS_110_1_0_3_0_3%]>
JScript does not support events.
<object KeyDown="[%$TOPIC/ms596670_en-us_VS_110_1_0_5_0_0%]" .../>

Implements

IInputElementKeyDown
Routed Event Information

Identifier field

KeyDownEvent

Routing strategy

Bubbling

Delegate

KeyEventHandler

  • The corresponding tunneling event is PreviewKeyDown.

  • Override OnKeyDown to implement class handling for this event in derived classes.

Remarks

Key handling interacts with other platform features such as commanding and text composition. The KeyDown event is a lower-level text input event that might not behave as expected on certain controls. This is because some controls have control compositing or class handling that provides a higher-level version of text input handling and related events.

This event creates an alias for the KeyboardKeyDown attached event for this class so that KeyDown is part of the class members list when UIElement is inherited as a base element. Event handlers that are attached to the KeyDown event are attached to the underlying KeyboardKeyDown attached event and receive the same event data instance.

Version Information

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1