TreeView.OnKeyDown Method

Provides handling for the KeyDown event when a key is pressed while the control has focus.

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


Protected Overrides Sub OnKeyDown ( _
    e As KeyEventArgs _
protected override void OnKeyDown(
    KeyEventArgs e



Exception Condition

e is null.


The OnKeyDown method is called before any event handler for the KeyDown is called. This method allows derived classes to handle the KeyDown event without attaching a delegate. This is the preferred technique for handling the event in a derived class.

When the Control key is pressed in combination with other keys, the TreeView physically scrolls by pixel. When the same keys are pressed alone; not in combination with the Control, the TreeView control scrolls logically, by item.

This implementation marks the KeyDown event as handled by setting the Handled property of the event data to true in the following situations:

  • The TreeView can scroll, the Control key is pressed, and one of the following keys is pressed:









  • The PageUp key is pressed and the TreeView scrolls by page.

  • The Home key is pressed and the control successfully puts focus on the first item.

  • The End key is pressed and the control successfully puts focus on the last item.

  • The Up or Down key is pressed when there is no selected item and the control can focus on the first item.

  • The Left or Right is pressed and the control expands or collapses.

Notes to Inheritors

If you override OnKeyDown, you can prevent registered delegates from receiving events by setting Handled to true. For more information about routed events and the Handled property, see Events Overview for Silverlight.

Version Information


Supported in: 5, 4, 3


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