Sélectionner le text d'une TextBox lorsqu'il est actif

Résolu
Nikoui Messages postés 794 Date d'inscription vendredi 24 septembre 2004 Statut Membre Dernière intervention 19 août 2008 - 1 déc. 2005 à 14:48
Nikoui Messages postés 794 Date d'inscription vendredi 24 septembre 2004 Statut Membre Dernière intervention 19 août 2008 - 1 déc. 2005 à 15:28
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

sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 38
1 déc. 2005 à 15:10
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#]
3
cs_coq Messages postés 6351 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 99
1 déc. 2005 à 15:14
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#
*/
3
cs_coq Messages postés 6351 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 99
1 déc. 2005 à 15:15
Arf ! Panne de refresh !
Tant pis, j'ai appronfondis le sujet ^^

/*
coq
MVP Visual C#
*/
0
Nikoui Messages postés 794 Date d'inscription vendredi 24 septembre 2004 Statut Membre Dernière intervention 19 août 2008 10
1 déc. 2005 à 15:23
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)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 38
1 déc. 2005 à 15:25
lol... aller, celui-ci, je suis sur que c'est le dernier... MouseUp

Sébastien FERRAND
[MVP C#]
0
Nikoui Messages postés 794 Date d'inscription vendredi 24 septembre 2004 Statut Membre Dernière intervention 19 août 2008 10
1 déc. 2005 à 15:28
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
0