UIElement.GotFocus Ereignis

Definition

Tritt auf, wenn ein UIElement den Fokus erhält. Dieses Ereignis wird asynchron ausgelöst, sodass der Fokus erneut verschoben werden kann, bevor die Bubbling abgeschlossen ist.

// Register
event_token GotFocus(RoutedEventHandler const& handler) const;

// Revoke with event_token
void GotFocus(event_token const* cookie) const;

// Revoke with event_revoker
UIElement::GotFocus_revoker GotFocus(auto_revoke_t, RoutedEventHandler const& handler) const;
public event RoutedEventHandler GotFocus;
function onGotFocus(eventArgs) { /* Your code */ }
uIElement.addEventListener("gotfocus", onGotFocus);
uIElement.removeEventListener("gotfocus", onGotFocus);
- or -
uIElement.ongotfocus = onGotFocus;
Public Custom Event GotFocus As RoutedEventHandler 
<uiElement GotFocus="eventhandler"/>

Ereignistyp

Hinweise

Wir empfehlen die Verwendung des UIElement-Fokus-Routingereignisses anstelle von FocusManager-Ereignissen , wenn möglich.

Nur ein einzelnes UI-Element gleichzeitig kann den Fokus haben.

Ein Steuerelement kann den Fokus erhalten, wenn ein anderes Steuerelement den Fokus verliert, sich die Anwendungsansicht ändert, der Benutzer Anwendungen wechselt oder der Benutzer mit dem System interagiert, sodass sich die Anwendung nicht mehr im Vordergrund befindet.

LostFocus wird vor GotFocus.

Wenn Sie steuerelementkomositing oder ui compositing und handling GotFocus auf einem Container wie einem Panel oder GridView verwenden, bestimmen Sie, welches Element in der Komposition den Fokus erhalten hat, indem Sie die OriginalSource für die Ereignisdaten überprüfen.

Da das GotFocus Ereignis keine speziellen Ereignisdaten enthält, können Sie die UIElement.FocusState-Eigenschaft überprüfen, um festzustellen, ob es sich um Benutzer- oder App-Code handelte, der dazu führte, dass ein Element den Fokus erhält.

private void panel_GotFocus(object sender, RoutedEventArgs e)
{
    UIElement uie = e.OriginalSource as UIElement;
    FocusState fc = uie.FocusState;
}

Der Tastaturfokus ist besonders für die Tastaturereignisbehandlung relevant, da nur das aktuell tastaturorientierte UIElement die Quelle der KeyUp- und KeyDown-Tastenereignisse sein kann. Anwendungen rufen möglicherweise UIElement.Focus(Microsoft) auf. Ui. Xaml.FocusState) als Initialisierungsaktion, sodass die wichtigsten Ereignisse in der App als Ganzes verwendet werden können, um Zugriffstasten oder Zugriffstasten zu erkennen. Weitere Informationen finden Sie unter Tastaturinteraktionen.

GotFocus ist ein Routingereignis. Weitere Informationen zum Routingereigniskonzept finden Sie unter "Ereignisse und Routingereignisse".

Bestimmte Windows-Runtime-Steuerelemente verfügen möglicherweise über eine klassenbasierte Behandlung für das GotFocus Ereignis. Wenn ja, weist das Steuerelement wahrscheinlich eine Außerkraftsetzung für die Methode OnGotFocus auf. In der Regel wird das Ereignis vom Klassenhandler behandelt, und das GotFocus-Ereignis wird nicht für die Behandlung durch Benutzercodehandler für dieses Steuerelement ausgelöst. Steuerelemente behandeln das Ereignis möglicherweise, um eine Eigenschaft des visuellen Zustands zu laden, die ein Fokusrechteck anzeigt.

Das Fokusrechteck eines Steuerelements ist eine wichtige visuelle Komponente, die die Barrierefreiheit unterstützt, indem das aktuelle fokussierte Element identifiziert und angibt, wo sich der Benutzer in der Registerkartensequenz der Anwendungs-UI befindet. In einigen Fällen ist der Fokusstatus der Fokusaktion für die Anzeige einer sichtbaren Fokusanzeige relevant.

Weitere Informationen zur Funktionsweise der klassenbasierten Behandlung für Ereignisse finden Sie in der Übersicht über Ereignisse und Routingereignisse. Weitere Informationen zu Registerkartenabfolgen und Barrierefreiheit finden Sie unter Barrierefreiheit der Tastatur.

Gilt für:

Weitere Informationen