ContentElement.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

true, jeśli fokus klawiatury może być ustawiony na ten element; false, jeśli to wywołanie metody nie wymusił fokusu.true if keyboard focus could be set to this element; false if this method call did not force focus.

Implementuje

Przykłady

Poniższy przykład to procedura obsługi zdarzeń załadowanej przez stronę, która znajduje określony nazwany akapit w dokumencie i ustawia fokus.The following example is a page-loaded event handler that finds a specified named paragraph in the document and sets focus to it. Akapity nie mają domyślnego fokusu. w tym konkretnym akapicie zastosowano styl (niepokazywany), który używał stylu Setter, aby umożliwić jego skoncentrowanie się.Paragraphs are not focusable by default; this particular paragraph had a style applied (not shown) that used a style Setter to make it focusable.

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 skupić się, Focusable i IsEnabled muszą być true.To be focusable, Focusable and IsEnabled must both be true. Należy zauważyć, że niemal wszystkie klasy pochodne ContentElement nie są Focusable domyślnie.Note that nearly all ContentElement derived classes are not Focusable by default.

Nawet jeśli element jest skoncentrowany i włączony, obsługa zdarzeń w ramach określonego drzewa (na przykład dla kontrolki złożonej) może reagować na zdarzenia fokusu w wersji zapoznawczej, przez co nie pozwala na skoncentrowanie się na tym metodzie, w związku z czym ta metoda zwróci false.Even if an element is focusable and enabled, event handling within a specific tree, (such as for a composite control) might respond to the preview focus events by not allowing focus there, thus this method would return false.

Na ogół ukierunkowane są dwie oddzielne koncepcje: fokus klawiatury i fokus logiczny, które nie zawsze są identyczne.Focus in general is governed by two separate concepts: keyboard focus and logical focus, which are not always identical. Ta metoda ustawia fokus logiczny.This method sets the logical focus. Nie ma możliwości programowania, aby ustawić fokus klawiatury w szczególny sposób; fokus klawiatury jest określany przez dane wejściowe użytkownika.There is no programmatic means to set keyboard focus specifically; keyboard focus is determined by user input. Aby uzyskać więcej informacji, zobacz temat Omówienie koncentracji i przegląd danych wejściowych.For more information, see Focus Overview 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).

Dotyczy

Zobacz też