ContentElement.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 może być ustawiony na ten element; false
jeśli to wywołanie metody nie wymusi fokusu.
Implementuje
Przykłady
Poniższy przykład to program obsługi zdarzeń ładowany do strony, który znajduje określony nazwany akapit w dokumencie i ustawia fokus na niego. Akapity nie są domyślnie fokusem; ten konkretny akapit miał zastosowany styl (nie pokazany), który używał stylu Setter , aby był uchwalony w trybie koncentracji uwagi.
void FocusOnParagraph(object sender, RoutedEventArgs e)
{
ContentElement ce = this.FindName("focusableP") as ContentElement;
ce.Focus();
}
Private Sub FocusOnParagraph(ByVal sender As Object, ByVal e As RoutedEventArgs)
Dim ce As ContentElement = TryCast(Me.FindName("focusableP"), ContentElement)
ce.Focus()
End Sub
Uwagi
Aby można było się skupić, Focusable i IsEnabled musi to być true
zarówno . Należy pamiętać, że prawie wszystkie ContentElement klasy pochodne nie Focusable są domyślnie.
Nawet jeśli element jest fokusowy i włączony, obsługa zdarzeń w określonym drzewie (na przykład w przypadku kontrolki złożonej) może reagować na zdarzenia fokusu podglądu, nie zezwalając na fokus w tym miejscu, dlatego ta metoda zwróci wartość false
.
Fokus w ogóle podlega dwóm osobnym koncepcjom: fokusowi klawiatury i fokusowi logicznemu, które nie zawsze są identyczne. Ta metoda ustawia fokus logiczny. Nie ma żadnych metod programistycznych, aby ustawić fokus klawiatury specjalnie; fokus klawiatury zależy od danych wejściowych użytkownika. Aby uzyskać więcej informacji, zobacz Omówienie fokusu i Omówienie danych wejściowych.
Jeśli wywołanie Focus zwraca true
wartość , IsKeyboardFocused i IsKeyboardFocusWithin są również true
.
Jeśli powiązane właściwości nie są jeszcze true
, podczas wywoływania Focusmetody jest wywoływane co najmniej jedno z następujących zdarzeń w następującej kolejności: PreviewLostKeyboardFocus, PreviewGotKeyboardFocus (źródło jest nowym obiektem docelowym fokusu), IsKeyboardFocusedChanged, IsKeyboardFocusWithinChanged, LostKeyboardFocus( GotKeyboardFocus źródłem jest nowy element docelowy fokusu).