UIElement.Focus UIElement.Focus UIElement.Focus UIElement.Focus Method

Определение

Попытка задать фокус для данного элемента.Attempts to set focus to this element.

public:
 virtual bool Focus();
public bool Focus ();
abstract member Focus : unit -> bool
override this.Focus : unit -> bool
Public Function Focus () As Boolean

Возвраты

Значение true, если для данного элемента задан клавиатурный фокус и логический фокус; значение false, если для данного элемента задан только логический фокус или если вызов данного метода не привел к изменению фокуса.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.

Реализации

Примеры

Следующий пример устанавливает фокус на TextBox ссылается Nameи затем изменяет положение курсора в пределах TextBox.The following example sets focus to a TextBox referenced by Name, and then adjusts the position of the cursor within the TextBox.

void OnClickMoveToStart(object sender, RoutedEventArgs e)
{
    tbPositionCursor.Focus();
    tbPositionCursor.Select(0, 0);
}
Private Sub OnClickMoveToStart(ByVal sender As Object, ByVal e As RoutedEventArgs)

    tbPositionCursor.Focus()
    tbPositionCursor.Select(0, 0)

End Sub

Комментарии

Чтобы иметь возможность получать фокус, Focusable и IsEnabled должны быть true.To be focusable, Focusable and IsEnabled must both be true.

Даже если элемент имеет фокус и допустимость значений, Focus события предварительного просмотра может быть обработано в определенного дерева и сосредоточиться на этот элемент не может быть разрешен (например, в составной элемент управления).Even if the element is focusable and valid, the Focus preview events may be processed in a specific tree, and focus on that element may not be allowed (for example, in a composite control). В таком случае этот метод возвращает false.In such a case, this method returns false.

Как правило, фокус управляется двух понятий: фокус клавиатуры и логический фокус.In general, focus is controlled by two different concepts: keyboard focus and logical focus. Эти две концепции не всегда совпадают.These two concepts are not always the same. Дополнительные сведения см. в разделе Сводка фокус и Общие сведения о входных данных.For more information, see Focus summary and Input Overview.

Если вызов Focus возвращает true, IsKeyboardFocused и IsKeyboardFocusWithin также true.If calling Focus returns true, IsKeyboardFocused and IsKeyboardFocusWithin are also true.

Если связанные свойства еще не сделали true, при вызове Focus, один или несколько из следующих событий вызываются в следующем порядке: PreviewLostKeyboardFocus, PreviewGotKeyboardFocus (источник — новый целевой объект фокус), IsKeyboardFocusedChanged, IsKeyboardFocusWithinChanged, LostKeyboardFocus, GotKeyboardFocus (источник — новый целевой объект фокус).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.

Применяется к