Problème d'affichage datagridview

Signaler
Messages postés
22
Date d'inscription
vendredi 10 février 2006
Statut
Membre
Dernière intervention
19 mars 2006
-
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
-
bonjour,

je n'arrive pas à afficher mes données dans le datagridview.J'ai une table d'employés avec 4 champs.
voici une partie de mon code suivant:


Connection.ConnectionString = ConnnectionStr;



try


{



// On ouvre la connexion


Connection.Open();



// On définit la requête SELECT à exécuter



string MySQLCmd =
"SELECT * FROM employes";



// On associe cette requête à la propriété SelectCommand du MySqlDataAdapter


MyAdapter.SelectCommand =
new
MySqlCommand(MySQLCmd, Connection);



// richTextBox1.Text = "poooot";



DataSet dataSet =
new System.Data.
DataSet();



// On remplit le dataset avec le résultat de la commande SELECT


MyAdapter.Fill(dataSet);



// On affiche le datagrid



this.dataGridView1.DataSource = dataSet.Tables[0];



this.dataGridView1.Refresh();



// On ferme la connexion le plus tôt possible


Connection.Close();


}



catch (
MySqlException Ex)


{



MessageBox.Show(
"Erreur SQL:\n" + Ex.Message,
"Erreur",
MessageBoxButtons.OK,
MessageBoxIcon.Error);


}


}

6 réponses

Messages postés
427
Date d'inscription
mercredi 1 octobre 2003
Statut
Membre
Dernière intervention
29 janvier 2008
1
slt a priori ton code n'a pas d'erreur ... si tu es en winForm il n'y a pas de raison que ca ne marche pas par contre si tu es en web =>

remplace this.dataGridView1.Refresh(); par this.dataGridView1.databinding();
Messages postés
22
Date d'inscription
vendredi 10 février 2006
Statut
Membre
Dernière intervention
19 mars 2006

je suis en winform , je désespère car j'ai un datagridview vide !
Messages postés
427
Date d'inscription
mercredi 1 octobre 2003
Statut
Membre
Dernière intervention
29 janvier 2008
1
euh ... tu à tester si tu n'avais pas de problemes de connexion , si ta requete fonctionne dans le sgbd (je pense pas que cela vienne de ca vu la requete basic mais on c'est jamais), afficher en debug le contenu de ton dataSet pour voir si il à des valeurs dedans ?

Moi j'utilise cette méthode : je passe directement ma requete dans l'instanciation de mon sqlDataAdapter

string
MySQLCmd = "SELECT * FROM employes";
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter(MySQLCmd
,Connection
);
da.Fill(ds);
dataGridView1.datasource = ds.tables[0];
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
55
J'ajouterais, meme si ca repond pas au probleme : mets ton Connection.Close() dans un bloc finally{} pour t'assurer que ta connexion soit bien fermée, meme en cas de plantage dans le try



Mx
MVP C#
Messages postés
22
Date d'inscription
vendredi 10 février 2006
Statut
Membre
Dernière intervention
19 mars 2006

en mode debug, le contenu de dataset est {System.Data.dataset}.
De même quand j'ai essayé d'afficher le contenu de dataset dans un textbox,il affiche Syste.Data.dataset!
D'oû vient le problème???
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
55
Oui , c'est normal, il faut que tu navigues dans les propriétés de ton DataSet.
Par exemple, pour connaitre le nombre de tables contenues : tonDataset.Tables.Count;

De meme, tu peux naviguer dans les DataTables contenus par tes DataSets ainsi : tonDataSet.Tables[0].[propriété]


Mx
MVP C#