Sélectionner le text d'une TextBox lorsqu'il est actif [Résolu]

Signaler
Messages postés
794
Date d'inscription
vendredi 24 septembre 2004
Statut
Membre
Dernière intervention
19 août 2008
-
Messages postés
794
Date d'inscription
vendredi 24 septembre 2004
Statut
Membre
Dernière intervention
19 août 2008
-
J'aimerai sélectionner le contenu d'une TextBox lorsque l'utilisateur arrive dans cette TextBox.



Pour cela, je traite l'évènement Enter du TextBox de la facon suivante :



private void textBox1_Enter(object sender, EventArgs e)

{

textBox1.SelectAll();

}



Lorsque je parcours ma Form avec Tab, le contenu du TextBox est bien sélectionné lorsque j'arrive dessus.

Mais si je vais sur ma TextBox en cliquant dessus, et non avec tab, je
passe bien dans l'évènement Enter, mais mon texte n'est pas sélectionné
:(



Y'aurait il un autre évènement après le Enter, qui effacerai la sélection par défaut lors du clic ?

6 réponses

Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Modérateur
Dernière intervention
14 février 2014
36
en fait, il me semble que l'évènement click est après le Enter

donc il suffit de faire la même chose dans l'évènement Click.

Sébastien FERRAND
[MVP C#]
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
90
Salut,

Il faut plutôt que tu le fasses sur le clic.
Le seul problème c'est qu'après il devient impossible de positionner le carret à la souris.
La solution consiste donc à utiliser une combinaison entre les evens Click et Enter.
Ca donne quelquechose comme ceci :

private bool _mustSelectAllTextOnTextBox1 = false;


private void textBox1_Enter(object sender, EventArgs e)
{
this._mustSelectAllTextOnTextBox1 = true;
}


private void textBox1_Click(object sender, EventArgs e)
{
if (this._mustSelectAllTextOnTextBox1)
{
textBox1.SelectAll();
this._mustSelectAllTextOnTextBox1 = false;
}
}

/*
coq
MVP Visual C#
*/
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
90
Arf ! Panne de refresh !
Tant pis, j'ai appronfondis le sujet ^^

/*
coq
MVP Visual C#
*/
Messages postés
794
Date d'inscription
vendredi 24 septembre 2004
Statut
Membre
Dernière intervention
19 août 2008
9
Alors j'avais effectivement essayé cette solution....sauf que
l'évènement Click (MouseClick aussi d'ailleur) n'est pas appelé après
le Enter...



C'est soit Enter quand on "gagne" le focus, soit Click ensuite si on reclique sur le control...



(ou alors j'ai merdé quelque part)
Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Modérateur
Dernière intervention
14 février 2014
36
lol... aller, celui-ci, je suis sur que c'est le dernier... MouseUp

Sébastien FERRAND
[MVP C#]
Messages postés
794
Date d'inscription
vendredi 24 septembre 2004
Statut
Membre
Dernière intervention
19 août 2008
9
Ah en fait rectification,



j'ai merdé :)



En fait click est bien appelé après Enter... Mais pas quand on débug et qu'on met un point d'arret dans le Enter ^^



Bon ca devrais marcher maintenant, je teste et je clos