Export (0) Print
Expand All
Expand Minimize

UIElement::Focus Method

Attempts to set focus to this element.

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

public:
virtual bool Focus() sealed

Return Value

Type: System::Boolean
true if keyboard focus and logical focus were set to this element; false if only logical focus was set to this element, or if the call to this method did not force the focus to change.

Implements

IInputElement::Focus()

To be focusable, Focusable and IsEnabled must both be true.

Even if an element is focusable and enabled, event handling within a specific tree, (such as for a composite control) might respond to the preview focus events by not allowing focus there, thus this method would return false.

Focus in general is governed by two separate concepts: keyboard focus and logical focus, which are not always identical. For more information, see Focus Overview or Input Overview.

If calling Focus returns true, IsKeyboardFocused and IsKeyboardFocusWithin are also true.

If the related properties are not already true, when you call Focus, one or more of the following events are raised in the following order: PreviewLostKeyboardFocus, PreviewGotKeyboardFocus (source is the new focus target), IsKeyboardFocusedChanged, IsKeyboardFocusWithinChanged, LostKeyboardFocus, GotKeyboardFocus (source is the new focus target).

In order for this call to be successful, some other element in the application needed to have focus previously.

The following example sets focus to a TextBox referenced by Name, and then adjusts the position of the cursor within the TextBox.

No code example is currently available or this language may not be supported.

.NET Framework

Supported in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

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

Show:
© 2014 Microsoft