Control.FocusState Propriété
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient une valeur qui spécifie si ce contrôle a le focus et le mode par lequel le focus a été obtenu.
public:
property FocusState FocusState { FocusState get(); };
FocusState FocusState();
public FocusState FocusState { get; }
var focusState = control.focusState;
Public ReadOnly Property FocusState As FocusState
Valeur de l’énumération. La valeur Unfocused indique que le contrôle n’a pas le focus.
Cette propriété prend en charge les contrôles qui utilisent différents styles visuels selon que le contrôle a été ciblé par le clavier ou par d’autres moyens. Certains contrôles utilisent des états visuels qui affichent un indicateur de focus visible si le contrôle a été ciblé par une action clavier, mais n’affichent pas l’indicateur si le contrôle a été ciblé par une action de pointeur. La logique interne d’un tel contrôle implémente OnGotFocus , puis obtient la valeur de FocusState de l’expéditeur. Si FocusState est Clavier, un autre état visuel nommé qui inclut un rectangle de focus est chargé, en appelant GoToState. En règle générale, les états visuels liés au focus sont regroupés dans le modèle de contrôle par défaut XAML. Les contrôles personnalisés qui souhaitent utiliser différents visuels de focus en fonction du mode de focus peuvent implémenter eux-mêmes cette même logique. Consultez OnGotFocus.
Une autre façon d’utiliser cette propriété consiste à utiliser FocusManager pour déterminer quel élément de l’interface utilisateur globale a le focus, puis à appeler FocusState sur cet élément pour obtenir des informations sur la façon dont ce contrôle a reçu le focus.
Notes
Dans Windows 8, lorsque FocusState a la valeur Programmatique, le visuel de focus clavier s’affiche même si la méthode d’entrée précédente était pointeur. Dans Windows 8.1, lorsque vous appelez Focus (FocusState.Programmatic), le FocusState précédent, pointeur ou clavier, est conservé afin que le visuel de focus approprié s’affiche. Cela signifie que si vous case activée la valeur de la propriété FocusState après avoir appelé Focus (FocusState.Programmatic), la propriété FocusState aura une valeur pointeur ou clavier.
Dans une application compilée pour Windows 8, mais exécutée dans Windows 8.1, le comportement Windows 8 est conservé. La valeur de la propriété FocusState est Programmatique et le visuel focus clavier s’affiche.
Notes
Les classes qui héritent d’ItemsControl, telles que ListBox et AutoSuggestBox, ne propagent pas la propriété FocusState. Ils retourneront toujours Unfocused. Accédez à la valeur correcte via RoutedEventArgs.OriginalSource.
Produit | Versions |
---|---|
WinRT | Build 10240, Build 10586, Build 14383, Build 15063, Build 16299, Build 17134, Build 17763, Build 18362, Build 19041, Build 20348, Build 22000, Build 22621, Build 26100 |