[C#] Passer le Curseur a un Autre Controle [Résolu]

Signaler
Messages postés
19
Date d'inscription
mercredi 2 mai 2007
Statut
Membre
Dernière intervention
21 janvier 2012
-
Whismeril
Messages postés
14120
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
24 janvier 2020
-
reconnaissance
salut a tous je débute la programmation en C# donc j'ai quelque difficulté.
ma difficulté en ce moment est de pouvoir passer le curseur a un autre contrôle après avoir taper sur la touche Entrer du clavier.
NB: mes fenêtre son faite en WPF et mes code en C#
merci de bien vouloir m'aide.

5 réponses

Messages postés
14120
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
24 janvier 2020
333
Bonjour,

je ne fais pas de WPF, alors le comportement peut être différent.

pour passer le focus à un contrôle en c#, le code est
MonControle.Focus()


Ensuite pour déclencher ce code sur la touche "Entrée" tu dois te servir d'un événement "KeyPress" ou "KeyDown/KeyUp".
Soit dans ton une cellule, soit dans le datagrid, soit dans la form (si elle a le KeyPreview).

Whismeril
Messages postés
19
Date d'inscription
mercredi 2 mai 2007
Statut
Membre
Dernière intervention
21 janvier 2012

reconnaissance
Messages postés
1860
Date d'inscription
lundi 28 novembre 2005
Statut
Modérateur
Dernière intervention
14 février 2015
31
Bonjour

Lorsque quelqu'un donne la réponse à ta question, merci de mettre "Réponse acceptée !" la prochaine fois.

PS : Je confirme qu'en WPF, la méthode s'appelle toujours Focus() et permet la même chose qu'en WinForms.

Krimog : while (!(succeed = try())) ;
- Nous ne sommes pas des décodeurs ambulants. Le style SMS est prohibé. -
Messages postés
19
Date d'inscription
mercredi 2 mai 2007
Statut
Membre
Dernière intervention
21 janvier 2012

reconnaissance
en faite je veux que le focus soit passer un autre contre ( de mon choix) quand l'utilisateur aura taper la touche entre
Messages postés
14120
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
24 janvier 2020
333
Bonjour

Si CTL1 est celui qui à le focus, et CTL2 celui que tu veux activer, dans le Keypress de CTL1 tu détecte la touche entré
Sur MSDN, il y a un descriptif de l'évènement KeyPress, avec un exemple pour C#.
Cet exemple montre comment tester dans une TextBox si un nombre est saisi, pour la touche entré de mémoire ce doit être "keys.return" ou "keys.enter".

Une fois détecté, sur écris
CTL2.Focus();


Whismeril