Je dispose d'une base de données Access 2007 nommée Librairie composée d'une table Ouvrages comportant les champs ISBN, Titre, Auteur,.... Je souhaite afficher la table Ouvrages dans un DataGridView. J'amène le DataGridView dans Form1 ensuite je choisit la source de données et la propriété DataSource se cale sur ouvragesBindingSouurce.
Jusqu'à présent je n'ai pas encore écrit une seule de code. Je dispose des objets LibrairieDataSet, ouvragesBindingSource et ouvragesTableAdapter.
Le code généré par VS est le suivant :
Et à l'exécution, le DGV se remplit des données de la base. Impeccable.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 private void Form1_Load(object sender, EventArgs e) { // TODO: cette ligne de code charge les données dans la table this.ouvragesTableAdapter.Fill(this.librairieDataSet.Ouvrages); }
Les cellules du DGV sont éditables, j'en profite pour faire quelque modifications de données. J'aimerais maintenant répercuter ces modifications sur la base de données physique. Pour ça, je clique sur le bouton implémenté comme suit:
et là, c'est la cata, rien n'est mis à jour! Avez-vous une solution?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 private void button1_Click(object sender, EventArgs e) { this.ouvragesTableAdapter.Update(this.librairieDataSet.Ouvrages); }
Partager