Votre question

VB.net datagrid

Tags :
  • Programme
  • Programmation
Dernière réponse : dans Programmation
19 Avril 2010 17:11:47

bonjour tout le monde j'ai un petit souci avec mon code j'ai un datagridview que j'eesai de remplir j'ai utilisé la même fonction qu'un autre datagrid de mon programme qui fonctionne très bien... mais la il me di...
"Impossible d'ajouter une ligne à un contrôle DataGridView dépourvu de colonnes. Les colonnes doivent être ajoutées au préalable."
j'ai pourtant bien identifier mes colone avec...
datagridview1.columns(0).name = "nomcolone"

Dans mon datagrid je veux voir apparaitre deux date (debut et fin)... j'ai donc une requete
SELCT DISTINCT DateDebut, DateFin FROM Ecritures;

quelqu'un a une idée? merci d'avance

Autres pages sur : net datagrid

a c 232 L Programmation
19 Avril 2010 20:06:59

Salut,

Il va nous falloir un peu plus de code que ça. Fais voir l'initialisation de tes colonnes, quelque chose du genre
  1. datagridview1.Columns.Add(...)
m
0
l
19 Avril 2010 22:43:25

voila ma fonction :::

  1. Sub remplirDataGridHistorique(ByVal sql As String)
  2. Dim Ligne As String()
  3. '_____________________
  4. ' Ouverture de la base
  5. '_____________________
  6. g_connexionBase.ouverture()
  7. g_Command.Connection = g_Connect
  8.  
  9. '___________________________
  10. ' Recuperation de la requète
  11. '___________________________
  12. g_Command.CommandText = sql
  13.  
  14. '________________________
  15. ' Execution de la requète
  16. '________________________
  17. g_Reader = g_Command.ExecuteReader
  18.  
  19.  
  20.  
  21. '______________________
  22. ' Lecture de la requete
  23. '______________________
  24. Do While g_Reader.Read()
  25. 'Affecte les résultats de la requête dans la ligne
  26. Ligne = New String() {g_Reader.GetValue(0).ToString, _
  27. g_Reader.GetValue(1).ToString}
  28.  
  29. 'Ajoute la ligne au dataGridView
  30. FRM_Historique.DGV_Historique.Rows.Add(Ligne)
  31. Loop
  32.  
  33.  
  34.  
  35. End Sub





et voila mon code...

  1. Private Sub CB_Societe_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CB_Societe.SelectedIndexChanged
  2. Dim RemplirDGVHisto As New CLA_ActionSQL
  3. '___________________________________________
  4. 'initialisation des colonnes du Datagridview
  5. '___________________________________________
  6. Me.DGV_Historique.ColumnCount = 2
  7. Me.DGV_Historique.Columns(0).Name = "Date de début"
  8. Me.DGV_Historique.Columns(0).Width = 125
  9. Me.DGV_Historique.Columns(1).Name = "Date de fin"
  10. Me.DGV_Historique.Columns(1).Width = 125
  11. RemplirDGVHisto.remplirDataGridHistorique("select distinct DateDebut, DateFin from EcrituresVteSSTVA;")
  12. End Sub





pour info j'ai aussi essayer d'initialiser mon datagrid au load de mon formulaire... mais meme souci...

en tout cas merci de s'interresser a mon probleme...
m
0
l
Contenus similaires
19 Avril 2010 22:45:55

j'ai oublié... mon bug arive au passe d'ajout d ela ligne dans ma fonction...
m
0
l
a c 232 L Programmation
19 Avril 2010 23:12:02

Le plus simple dans ce cas c'est de faire du DataBinding, plutôt que d'ajouter les colonnes et les lignes à la main.

Quelque chose dans ce genre:
  1. Sub remplirDataGridHistorique(ByVal sql As String)
  2. Dim Ligne As String()
  3. '_____________________
  4. ' Ouverture de la base
  5. '_____________________
  6. g_connexionBase.ouverture()
  7. g_Command.Connection = g_Connect
  8. '___________________________
  9. ' Recuperation de la requète
  10. '___________________________
  11. g_Command.CommandText = sql
  12. '________________________
  13. ' Execution de la requète
  14. '________________________
  15. g_Reader = g_Command.ExecuteReader
  16. '______________________
  17. ' Lecture de la requete
  18. '______________________
  19. FRM_Historique.DGV_Historique.DataSource = g_Reader
  20. End Sub
m
0
l
19 Avril 2010 23:29:57

ok je vais faire des recherche la dessus car je n'en ai jamais entendu parler...
Mais c bizarre que cela fonctionne sur un autre datagrid et par sur celui la!
je pense qu'il doit y avoir une coquille quelque part que je ne vois pas ou je sais pas quoi...

merci encore pour l'interressement...
m
0
l
a c 232 L Programmation
19 Avril 2010 23:36:49

Je ne fais pas de VB.Net, je fais du C#, donc il peut y avoir des petites erreurs, mais normalement tu peux binder ton DataReader à la DataSource.
Et si ça ne fonctionne pas comme ça, tu peux remplir une DataTable avec ton DataReader (dataReader.Fill(dataTable)), et mettre la DataTable dans ta DataSource.
m
0
l
19 Avril 2010 23:59:57

j'essai ca et je post le resultat merci
m
0
l
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS