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 procedura obsługi zdarzeń ładowana przez stronę, która 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ł skoncentrowany.
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 być fokusem, Focusable i IsEnabled musi mieć truewartość . Należy pamiętać, że prawie wszystkie ContentElement klasy pochodne nie Focusable są domyślnie.
Nawet jeśli element jest możliwy do koncentracji uwagi i włączony, obsługa zdarzeń w określonym drzewie (na przykład dla kontrolki złożonej) może reagować na zdarzenia fokusu podglądu, nie zezwalając na fokus tam, w związku z czym ta metoda zwróci falsewartość .
Fokus w ogóle podlega dwóm oddzielnym pojęciom: fokusowi klawiatury i fokusowi logicznemu, które nie zawsze są identyczne. Ta metoda ustawia fokus logiczny. Nie ma programowych metod ustawiania fokusu klawiatury w szczególności; 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 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).