Bonjour,
Je cherche à remplir un datagrid en extrayant les données contenues dans un tableau à deux dimensions...
Malheureusement, après plusieurs recherches infructueuses, et un creusage de tête entrainant une migraine abominable, je ne sais toujours pas comment faire...
Tout, ou pratiquement, a été essayé...
En fait, je voudrais pouvoir insérer une ligne dans mon datagrid, en partant du principe que mon tableau 2D récupère toutes les informations du dataGrid, et les stock, pour les réafficher, et les enregistrer dans la base de donnée SQL Server. Vous m'suivez jusque là?
Pour éclairer voici le code qui me permet de transferer les données du dataGrid dans mon tableau:
Et voici ce que je tente de faire dans le sens inverse:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45 L = dsMateriel1.MATERIELS.Rows.Count; C = dsMateriel1.MATERIELS.Columns.Count; string [,] tab = new string [L,C] ; try { //Ouverture de la connexion: Cnx2.Open(); Cmd2.Connection=Cnx2; // Création de la requête SQL: Cmd2.CommandText="SELECT * FROM MATERIELS;"; SqlDataReader reader = Cmd2.ExecuteReader(); k=0; while ( reader.Read()) { for (i=0; i<L; i++) { for (j=0; j<C; j++) { if (reader.IsDBNull(k)) { tab[i,j] = Convert.ToString(reader.GetValue(k)); } else { tab[i,j] = Convert.ToString(reader.GetValue(k)); } k = k+1; } k = 0; } } MessageBox.Show("Tableau rempli!"); //Fermeture de la connexion: reader.Close(); Cnx2.Close();
Un grand merci à ceux qui pourront m'aider!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 try { //Ouverture de la connexion: Cnx2.Open(); Cmd2.Connection=Cnx2; // Création de la requête SQL: Cmd2.CommandText="SELECT * FROM MATERIELS;"; SqlDataReader reader = Cmd2.ExecuteReader(); k=0; for (i=0; i<L; i++) { for (j=0; j<C; j++) { dsMateriel1.MATERIELS.Rows[j] = Convert.ChangeType(tab[i,j]); dsMateriel1.MATERIELS.Columns[i] = Convert.ChangeType( tab[i,j]); } k = 0; } MessageBox.Show("Tableau copié!"); //Fermeture de la connexion: reader.Close(); Cnx2.Close(); }
Je suis ouvert à toute les suggestions possibles et imaginables!![]()
Partager