Exporter (0) Imprimer
Développer tout
Développer Réduire
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

UIElement.GotKeyboardFocus, événement

Se produit lorsque le focus du clavier est sur cet élément.

Espace de noms :  System.Windows
Assembly :  PresentationCore (dans PresentationCore.dll)
XMLNS pour XAML : http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

public event KeyboardFocusChangedEventHandler GotKeyboardFocus
<object GotKeyboardFocus="KeyboardFocusChangedEventHandler" .../>

Implémentations

IInputElement.GotKeyboardFocus

Champ d'identificateur

GotKeyboardFocusEvent

Stratégie de routage

Propagation

delegate

KeyboardFocusChangedEventHandler

IsKeyboardFocusedChanged est un événement semblable qui effectue le suivi des changements d'état dans une propriété qui maintient l'état du focus sur un élément ; l'événement GotKeyboardFocus est déclenché dans de nombreuses circonstances identiques.

Cet événement utilisant le routage par propagation, l'élément qui fait l'objet du focus peut être un élément enfant plutôt que l'élément où le gestionnaire d'événements est en fait attaché. Vérifiez la Source dans les données de l'événement pour déterminer l'élément faisant effectivement l'objet du focus.

Cet événement crée un alias pour l'événement attaché de la classe Keyboard.GotKeyboardFocus, de façon à ce que GotKeyboardFocus fasse partie de la liste des membres de la classe lorsque UIElement est hérité comme élément de base. Les gestionnaires d'événements attachés à l'événement GotKeyboardFocus le sont aussi à l'événement attaché Keyboard.GotKeyboardFocus sous-jacent et reçoivent la même instance de données d'événement.

Cet exemple montre comment modifier la couleur d'un élément lorsqu'il obtient et perd le focus à l'aide des événements GotFocus et LostFocus.

Cet exemple comprend un fichier XAML (eXtensible Application Markup Language) et un fichier code-behind.

Le code XAML suivant crée l'interface utilisateur, que se compose de deux objets Button et attache des gestionnaires d'événements pour les événements GotFocus et LostFocus aux objets Button.


<StackPanel>
  <StackPanel.Resources>
    <Style TargetType="{x:Type Button}">
      <Setter Property="Height" Value="20"/>
      <Setter Property="Width" Value="250"/>
      <Setter Property="HorizontalAlignment" Value="Left"/>
    </Style>
  </StackPanel.Resources>
  <Button
      GotFocus="OnGotFocusHandler"
      LostFocus="OnLostFocusHandler">Click Or Tab To Give Keyboard Focus</Button>
  <Button
      GotFocus="OnGotFocusHandler"
      LostFocus="OnLostFocusHandler">Click Or Tab To Give Keyborad Focus</Button>
</StackPanel>


Le code-behind suivant crée les gestionnaires d'événements GotFocus et LostFocus. Lorsque le Button obtient le focus clavier, l'Background du Button devient rouge. Lorsque le Button perd le focus clavier, l'Background du Button redevient blanc.


public partial class Window1 : Window
{
    public Window1()
    {
        InitializeComponent();
    }

    // Raised when Button gains focus.
    // Changes the color of the Button to Red.
    private void OnGotFocusHandler(object sender, RoutedEventArgs e)
    {
        Button tb = e.Source as Button;
        tb.Background = Brushes.Red;
    }
    // Raised when Button losses focus. 
    // Changes the color of the Button back to white.
    private void OnLostFocusHandler(object sender, RoutedEventArgs e)
    {
        Button tb = e.Source as Button;
        tb.Background = Brushes.White;
    }
}


.NET Framework

Pris en charge dans : 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Ajouts de la communauté

AJOUTER
Afficher:
© 2015 Microsoft