Dans mon WPF
App, comment puis-je obtenir l'état du changement, ctrl alt et clés dans mon gestionnaire d'événements de la souris? Je me souviens de MFC
, vous pouvez obtenir cette information à partir de l'événement de la souris.Obtention des états shift/ctrl/alt à partir d'un événement souris?
13
A
Répondre
19
En supposant que vous êtes toujours dans le gestionnaire d'événements de la souris, vous pouvez vérifier la valeur de Keyboard.Modifiers. Je ne pense pas qu'il y ait de toute façon à obtenir des informations de modification de l'événement lui-même, donc vous devez interroger le clavier directement.
16
Selon la réponse d'Andy, vous utilisez Keyboard.Modifiers. Je pensais que je posterais un petit exemple
Quelque chose comme ceci dans votre gestionnaire d'événements devrait fonctionner:
private void MyExampleButton_Click(object sender, RoutedEventArgs e)
{
if ((Keyboard.Modifiers & ModifierKeys.Control) > 0) {
System.Diagnostics.Debug.WriteLine("Control is pressed");
} else {
System.Diagnostics.Debug.WriteLine("Control is NOT pressed");
}
}
Cordialement, Mike
Questions connexes
- 1. Obtention d'une position 'top' absolue à partir d'un événement de souris (Javascript/jQuery)
- 2. Émulation souris événement AS3
- 3. Gestion du même événement dans plusieurs états dans Workflow Foundation
- 4. Obtention d'un chemin absolu à partir des sélecteurs xpath
- 5. Obtention de texte à partir d'un QListView
- 6. java: l'activation d'un événement clic de souris
- 7. Obtention d'un NSImage à partir d'un NSProgressIndicator
- 8. Obtention d'un délégué à partir de methodinfo
- 9. Obtention de données à partir d'un DataGrid
- 10. Tigre/Lignes ou fichiers de formes des États et des villes des États-Unis?
- 11. Obtention d'événements à partir d'un thread en toute sécurité
- 12. GTK # événement de souris dans la zone de dessin
- 13. Ajout composant Java GUI sur événement de souris
- 14. TriState Case à cocher - comment changer l'ordre des états
- 15. Obtention d'une référence à ViewModel à partir d'un IValueConverter
- 16. Flex 3 utilisant des états imbriqués
- 17. Obtention de valeurs à partir d'une liste déroulante asp.net mvc
- 18. Obtention des données des derniers mois à partir de la base de données
- 19. MKMapView: Obtention d'un événement cliqué sur la broche d'annotation
- 20. Comment faire pour appuyer sur le bouton de la souris à partir d'un événement de commande dans XUL?
- 21. Obtention d'une liste de champs à partir d'un DBExpress TSQLQuery
- 22. Obtention d'enregistrements distincts à partir d'une requête mysql
- 23. Obtention de balises créées dynamiquement (jQuery) à partir d'ASP.NET
- 24. Obtention d'un fichier XML à partir d'un jeu de données
- 25. Obtention d'une seule colonne à partir d'une entité
- 26. Obtention de mesures précises à partir d'une minuterie en C#
- 27. Obtention d'une entrée utilisateur à partir du calque du modèle
- 28. Obtention de ClientCredentials à partir de l'opération WCF
- 29. Obtention du DataType de @JPA à partir de JPA
- 30. Obtention d'événements à partir du WPF Checked ComboBox
Comment ennuyeux ... si je comprends bien, cela signifie que si la l'utilisateur lâche le clavier entre le moment où l'événement de la souris est déclenché et le moment où le gestionnaire d'événements interroge le clavier, il détectera les mauvais états de la clé. –
@ M.Dudley Peu importe que vous capturiez l'état du clavier ou WPF fait ... la souris et le clavier sont disjoints, donc la condition de course est inévitable. –