Probleme thread ==> Crossed Thread

Résolu
julbuttt Messages postés 19 Date d'inscription mercredi 18 janvier 2006 Statut Membre Dernière intervention 19 juin 2006 - 17 avril 2006 à 18:42
julbuttt Messages postés 19 Date d'inscription mercredi 18 janvier 2006 Statut Membre Dernière intervention 19 juin 2006 - 17 avril 2006 à 19:31
Bonjour, voila en faite j'utilise deux thread qui s'executent en //, un qui sert a l'emission de données et l'autre a la reception . Je recupere les données et j'utilise une methode pour ecrire dans un datagrid situé dans un tabpage. Le probleme est que quand j'accede a mon datagrid, j'ai une erreur au niveau de ma fonction ecrire et cette erreur est de type:
"Cross-thread operation not valid: Control 'dataGridView1' accessed from a thread other than the thread it was created on."
Donc j'ai utiliser un semaphore pour essayer d'y remédier mais rien n'y fait cela me le fait toujours.
Les deux threads ne sont pas dans cette classe!
Code:
Mutex mtx;
public Lanwatch
{
mtx = new Mutex();
}
public void EcrireLanwatch(String s0, String s1, String s2, String s3, String s4, String s5, String s6)
{
String[] row = new String[7];

if (this.dataGridView1.IsDisposed)
{
this.initLanWatch();
}

// Add a row for each string array.
DataGridViewRowCollection rows = this.dataGridView1.Rows;


row[0] = s0;
row[1] = s1;
row[2] = s2;
row[3] = s3;
row[4] = s4;
row[5] = s5;
row[6] = s6;
mtx.WaitOne();
rows.Add(row);
mtx.ReleaseMutex();
}
J'ai pas de solution pour y remedier !
Merci pour votre aide
Amicalement julbuttt

2 réponses

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
17 avril 2006 à 18:54
3
julbuttt Messages postés 19 Date d'inscription mercredi 18 janvier 2006 Statut Membre Dernière intervention 19 juin 2006
17 avril 2006 à 19:31
Merci bcp!
0
Rejoignez-nous