UIElement.Focus Metoda

Definicja

Próbuje ustawić fokus na tym elemencie.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

Zwraca

Boolean

true Jeśli fokus klawiatury i fokus logiczny zostały ustawione na ten element; false, jeśli tylko fokus logiczny został ustawiony na ten element, lub jeśli wywołanie tej metody nie wymusił zmiany fokusu.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.

Implementuje

Przykłady

Poniższy przykład ustawia fokus na TextBox, do którego odwołuje się Name, a następnie dostosowuje pozycję kursora w 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

Uwagi

Aby można było skupić się, Focusable i IsEnabled muszą być true.To be focusable, Focusable and IsEnabled must both be true.

Nawet jeśli element jest skoncentrowany i prawidłowy, zdarzenia w wersji zapoznawczej Focus mogą być przetwarzane w określonym drzewie i fokus na tym elemencie może być niedozwolony (na przykład w kontrolce złożonej).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). W takim przypadku ta metoda zwraca false.In such a case, this method returns false.

Ogólnie rzecz biorąc, fokus jest kontrolowany przez dwie różne koncepcje: fokus klawiatury i fokus logiczny.In general, focus is controlled by two different concepts: keyboard focus and logical focus. Te dwa koncepcje nie zawsze są takie same.These two concepts are not always the same. Aby uzyskać więcej informacji, zobacz temat Podsumowanie fokusu i przegląd danych wejściowych.For more information, see Focus summary and Input Overview.

Jeśli wywołanie Focus zwraca true, IsKeyboardFocused i IsKeyboardFocusWithin są również true.If calling Focus returns true, IsKeyboardFocused and IsKeyboardFocusWithin are also true.

Jeśli powiązane właściwości nie są jeszcze true, podczas wywoływania Focus, co najmniej jedno z następujących zdarzeń jest zgłaszane w następującej kolejności: PreviewLostKeyboardFocus, PreviewGotKeyboardFocus (Źródło jest nowym obiektem docelowym fokusu), IsKeyboardFocusedChanged, IsKeyboardFocusWithinChanged, LostKeyboardFocus, GotKeyboardFocus (Źródło jest nowym obiektem docelowym fokusu).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).

Aby to wywołanie zakończyło się pomyślnie, niektóre inne elementy w aplikacji muszą mieć fokus.In order for this call to be successful, some other element in the application needed to have focus previously.

Dotyczy