FocusManager.SetFocusedElement Method (DependencyObject, IInputElement)

 
System_CAPS_noteNote

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Sets logical focus on the specified element.

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

public static void SetFocusedElement(
	DependencyObject element,
	IInputElement value
)

Parameters

element
Type: System.Windows.DependencyObject

The focus scope in which to make the specified element the FocusedElement.

value
Type: System.Windows.IInputElement

The element to give logical focus to.

The FocusedElement is the element which has logical focus for the specific focus scope. This object may or may not have keyboard focus. Keyboard focus refers to the element that receives keyboard input. For more information on focus, keyboard focus, and logical focus, see the Input Overview.

It is possible to specify a focus scope that is an ancestor of the focus scope the element is in. For example, if a StackPanel is a focus scope and its parent Window is a focus scope, a TextBox child of the StackPanel could specify the Window as the focus scope when calling SetFocusedElement. The TextBox is then FocusedElement for both the Window focus scope and the StackPanel focus scope.

SetFocusedElement will give the specified element logical focus in the specified focus scope and will attempt to give the element keyboard focus.

The following example sets the element with logical focus by using the SetFocusedElement and it gets the element with logical focus by using the GetFocusedElement.

// Sets the focused element in focusScope1
// focusScope1 is a StackPanel.
FocusManager.SetFocusedElement(focusScope1, button2);

// Gets the focused element for focusScope 1
IInputElement focusedElement = FocusManager.GetFocusedElement(focusScope1);

.NET Framework
Available since 3.0
Return to top
Show: