This documentation is archived and is not being maintained.

Keyboard.Focus Method

Sets keyboard focus on the specified element.

Namespace:  System.Windows.Input
Assembly:  PresentationCore (in PresentationCore.dll)

Public Shared Function Focus ( _
	element As IInputElement _
) As IInputElement
Dim element As IInputElement 
Dim returnValue As IInputElement 

returnValue = Keyboard.Focus(element)
You cannot use methods in XAML.


Type: System.Windows.IInputElement

The element on which to set keyboard focus.

Return Value

Type: System.Windows.IInputElement
The element with keyboard focus.

For an element to receive keyboard input, the element must be focusable. To make an element focusable, set the Focusable property on the base element to true. For more information on the base elements, see Base Elements Overview. Panel classes, such as StackPanel and Canvas, set the default value of Focusable to false; therefore, for these objects to obtain keyboard focus, Focusable must be set to true.

Keyboard focus refers to the object that is receiving keyboard input. The element with keyboard focus has IsKeyboardFocused set to true. There can be only one element with keyboard focus on the entire desktop. Logical focus refers to the object within a focus scope that has focus. For more information on focus, keyboard focus, and logical focus, see Input Overview and Focus Overview.

An element with keyboard focus also has logical focus for the focus scope the element belongs to. An element with logical focus may or may not have keyboard focus.

The following example shows a Loaded event handler that sets keyboard focus on a Button.

private void OnLoaded(object sender, RoutedEventArgs e)
    // Sets keyboard focus on the first Button in the sample.

Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0