Comment afficher un texte dans une text box alors que l'on exexute du code dans

cs_Johnfoo Messages postés 7 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 29 mai 2006 - 29 mai 2006 à 18:24
Nikoui Messages postés 794 Date d'inscription vendredi 24 septembre 2004 Statut Membre Dernière intervention 19 août 2008 - 30 mai 2006 à 10:30
Bonjours,

Comment afficher un texte dans une text box alors que l'on exexute du code dans un thread?

Exemple:

private

void Start_thread()
{
   while
(
true)
   {
     Bidule();
     this.text_box.Text += "GO";

     Bidule2();
   }
}

Le compilateur me dit que je fais une operation cross-thread.
En effet je veux acceder à une fenetre window qui n'est pas creer dans ce thread.  :(

Merci pour vos reponses.

Jonathan

2 réponses

cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
29 mai 2006 à 18:48
Salut,
Il faut utiliser les méthodes Invoke et BeginInvoke de ton Control TextBox.
A ce sujet, Mx à poste un tutorial très bien fait.

VC# forever
=13319
0
Nikoui Messages postés 794 Date d'inscription vendredi 24 septembre 2004 Statut Membre Dernière intervention 19 août 2008 13
30 mai 2006 à 10:30
Sinon comme exemple (pas forcément aussi clair que celui de Mx que je n'ai pas encore été voir) de solution, si tu utilise VisualStudio, lorsque le compilo te génére l'exception, tu as dans la fenêtre d'exception (entre autre) un lien : "How to make cross thread calls" ou quelque chose comme ça qui point vers la msdn sur ce sujet.
0
Rejoignez-nous