The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

ButtonBase.OnKeyDown Method

Provides class handling for the KeyDown event that occurs when the user presses a key while this control has focus.

Namespace:  System.Windows.Controls.Primitives
Assembly:  System.Windows (in System.Windows.dll)

protected override void OnKeyDown(
	KeyEventArgs e


Type: System.Windows.Input.KeyEventArgs
The event data.


e is null.

This method marks the KeyDown event as handled by setting the KeyEventArgs.Handled property of the event data to true when ClickMode is not set to Hover and one of the following cases are true:

  • The user presses the SPACEBAR.

  • The user presses ENTER and the control accepts keyboard input.

Notes to Inheritors

If you override OnKeyDown, always call the base implementation in your OnKeyDown implementation. Failure to call the base implementation prevents base classes from handling the event with a class handler, which might change the run-time behavior of the final class. You can call the base implementation either before or after your special handling, depending on your requirements.


Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

© 2015 Microsoft