UIElement.Focus Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Próbuje ustawić fokus na ten element.
public:
virtual bool Focus();
public bool Focus();
abstract member Focus : unit -> bool
override this.Focus : unit -> bool
Public Function Focus () As Boolean
Zwraca
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 zmusiło fokusu do zmiany.
Implementuje
Przykłady
W poniższym przykładzie ustawia fokus na TextBox przywołyny przez Nameelement , a następnie dostosowuje położenie kursora TextBoxw obiekcie .
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 być fokusem, Focusable i IsEnabled musi mieć truewartość .
Nawet jeśli element jest fokusowy i prawidłowy, Focus zdarzenia podglądu mogą być przetwarzane w określonym drzewie i skupić się na tym elemercie może być niedozwolone (na przykład w kontrolce złożonej).
W takim przypadku ta metoda zwraca wartość false.
Ogólnie rzecz biorąc, fokus jest kontrolowany przez dwie różne koncepcje: fokus klawiatury i fokus logiczny. Te dwie koncepcje nie zawsze są takie same. Aby uzyskać więcej informacji, zobacz Podsumowanie fokusu i Omówienie danych wejściowych.
Jeśli wywołanie Focus zwraca wartość true, IsKeyboardFocused i IsKeyboardFocusWithin są również true.
Jeśli powiązane właściwości nie są jeszcze true, podczas wywoływania Focusmetody , co najmniej jedno z następujących zdarzeń są zgłaszane w następującej kolejności: PreviewLostKeyboardFocus, PreviewGotKeyboardFocus (źródło jest nowym celem fokusu), IsKeyboardFocusedChanged, , IsKeyboardFocusWithinChangedLostKeyboardFocus, GotKeyboardFocus (źródłem jest nowy cel fokusu).
Aby to wywołanie powiodło się, niektóre inne elementy w aplikacji musiały mieć wcześniej fokus. Ponadto gdy element kontenera nadrzędnego wywołuje tę metodę, w niektórych sytuacjach element podrzędny uzyskuje fokus, a zwracana wartość to false. Aby sprawdzić, czy element ma fokus, użyj IsKeyboardFocusWithin właściwości i IsKeyboardFocused .