bonjour à tous,

Voila, j'ai un petit programme simple qui me permet de visualiser une base de données Access dans un datagridview (via un dataset).
Voici le code pour ouvrir et pour charger le datagridview :

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
 
                openFileDialog1.ShowDialog();
                connexion = new System.Data.OleDb.OleDbConnection();
                connexion.ConnectionString = "Provider=microsoft.jet.oledb.4.0;Data Source=" + openFileDialog1.FileName + ";";
 
                Connexion.Open();
                toolStripButton2.Enabled = true;
                this.Text = "BD_ES2 - " + openFileDialog1.FileName;
 
                requete = "select * from table1";
                adapteur = new OleDbDataAdapter(requete, connexion);
                adapteur.Fill(dataSet1);
                dataGridView1.Refresh();
                dataGridView1.DataSource = dataSet1;
                // on charge la 1er table (index 0)
                dataGridView1.DataMember = dataSet1.Tables[0].ToString();
                dataGridView1.Refresh();
Pour fermer la base et vider le datagridview :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 connexion.Close();
            toolStripButton2.Enabled = false;
            this.Text = "BD_ES2";
 
            dataSet1.Reset();
            dataGridView1.DataSource = null;
            dataGridView1.DataMember = null;
Ca marche la 1er fois mais si je veux ré-ouvrir une base (la même ou une autre) le datagridview ne se remplit pas, il n'y a que le nom des colonnes et une ligne vide...

une idée...
merci d'avance