Diese Dokumentation wurde archiviert und wird nicht länger gepflegt.

FocusManager-Klasse

Aktualisiert: November 2007

Stellt eine Reihe statischer Methoden sowie angefügte Eigenschaften und Ereignisse bereit, um Fokusbereiche zu ermitteln und festzulegen und das fokussierte Element innerhalb des Bereichs festzulegen.

Namespace:  System.Windows.Input
Assembly:  PresentationCore (in PresentationCore.dll)

public static class FocusManager
public final class FocusManager
public final class FocusManager
Sie können eine Instanz dieser Klasse nicht direkt in XAML erstellen.

In Windows Presentation Foundation (WPF) werden zwei Begriffe verwendet, die den Fokus betreffen: Tastaturfokus und logischer Fokus.

Der Tastaturfokus bezieht sich auf das Element, das derzeit die Tastatureingabe empfängt. Nur ein Element kann den Tastaturfokus aufweisen. Für das Element mit dem Tastaturfokus ist IsKeyboardFocused auf true festgelegt. Keyboard.FocusedElement gibt das Element mit dem Tastaturfokus zurück.

Der logische Fokus bezieht sich auf das FocusManager.FocusedElement in einem bestimmten Fokusbereich.

Bei einem Fokusbereich handelt es sich um ein Containerelement, das das FocusManager.FocusedElement innerhalb des entsprechenden Bereichs überwacht. Die Window-Klasse ist ebenso wie die Klassen Menu, ContextMenu und ToolBar ein Fokusbereich. Bei einem Element, das ein Fokusbereich ist, ist IsFocusScope auf true festgelegt.

Der logische Fokus kann auf mehreren Elementen liegen, innerhalb eines Fokusbereichs kann jedoch immer nur ein Element den logischen Fokus haben. Ein Element mit dem logischen Fokus muss nicht unbedingt über den Tastaturfokus verfügen, jedoch weist ein Element mit Tastaturfokus den logischen Fokus auf. Ein Fokusbereich kann innerhalb eines anderen Fokusbereichs definiert werden. In diesem Fall können sowohl der übergeordnete Fokusbereich als auch der untergeordnete Fokusbereich ein FocusManager.FocusedElement aufweisen.

Im folgenden Szenario wird veranschaulicht, wie sich der Tastaturfokus und der logische Fokus in einer Windows Presentation Foundation (WPF)-Anwendung ändern, die ein Window mit einer TextBox und einem Menu aufweist, das ein MenuItem enthält. Wenn der Tastaturfokus von der TextBox auf das MenuItem übergeht, verliert die TextBox den Tastaturfokus, behält jedoch den logischen Fokus für den Window-Fokusbereich bei. Das MenuItem erhält den Tastaturfokus sowie den logischen für den Menu-Fokusbereich. Wenn der Tastaturfokus zum Stamm von Window zurückkehrt, erhält das Element im Window-Fokusbereich, das den logischen Fokus aufweist, den Tastaturfokus. Hier: TextBox. Die TextBox verfügt jetzt über den Tastaturfokus und den logischen Fokus. Das MenuItem verliert den Tastaturfokus, behält jedoch den logischen Fokus für den Menu-Fokusbereich bei.

Der Standardwert von IsFocusScope für Window, Menu, ToolBar und ContextMenu ist true.

Weitere Informationen zur Fokussierung finden Sie unter Übersicht über die Eingabe und unter Fokus - Übersicht.

System.Object
  System.Windows.Input.FocusManager

Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Windows Vista

.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

.NET Framework

Unterstützt in: 3.5, 3.0
Anzeigen: