Bonjour,
Je cherche à faire un formulaire qui me permettrait d'ajouter/modifier/supprimer des données d'un datagridview qui est relié à une table access par le code et non le databindings.
Cependant je ne voit pas comment faire.
J'ai le code pour le bouton ajouter et nouveau.
Cependant je ne sais pas comment faire pour le bouton supprimer et modifier
Pour supprimer: je voudrais sélectionner la ligne dans le datagridview et la supprimer en cliquant sur le bouton et que ça mette à jour la table access.
Pour modifier: je voudrais selectionner la ligne à modifier, que le texte apparaisse dans une textbox et que ca le modifie quand je clqieu sur modifier et pareil que la table access se mette à jour.
Je vous met déjà je code que j'ai.
Merci d'avance pour votre aide
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99 Imports System Imports System.Data Imports System.Data.OleDb Imports Microsoft.VisualBasic Public Class TypeDeProduit 'Déclaration de la variable pour la connection Private cnx As OleDbConnection 'Déclaration de la variable pour la commande Private cmd As OleDbCommand 'Déclaration de la variable pour le dataadapter Private dta As OleDbDataAdapter 'Déclaration de la variable pour le dataset Private dts As New DataSet 'Déclaration de la variable pour la requête Private sql As String 'Déclaration de la variable pour la datatable Private dtt As DataTable 'Déclaration de la variable pour le datarow Private dtr As DataRow 'Déclaration de la variable pour le Nº de l'enregistrement Private rownum As Integer 'Déclaration de la variable pour la connectionstring Private cnxstr As String 'Déclaration de la variable pour le commandbuilder Private cmdb As OleDbCommandBuilder Private Sub TypeDeProduit_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'ouverture de la connection (à partir du répertoire de l'application) sur la même ligne cnxstr = "provider = microsoft.ace.oledb.12.0 ; data source = C:\Users\mto\Desktop\MINI-ERP\ERP.accdb;" cnx = New OleDbConnection cnx.ConnectionString = cnxstr cnx.Open() 'Création de la requête sql sql = "select TypeDeProduit.Type_de_produit from TypeDeProduit" 'Création de la commande et on l'instancie (sql) cmd = New OleDbCommand(sql) 'Création du dataadapter (dta) et on l'instancie (cmd) dta = New OleDbDataAdapter(cmd) 'On instancie la commande (cmd) à la connection (cnx) cmd.Connection() = cnx 'On charge le dataset (dts) grâce à la propriété fill du dataadapter (dta) dta.Fill(dts, "Type_de_produit") 'On charge la datatable (dtt) grâce à la propriété tables du dataset (dts) dtt = dts.Tables("Type_de_produit") DataGridView1.DataSource = dts DataGridView1.DataMember = dtt.ToString DataGridView1.Columns("Type_de_produit").Width = 190 End Sub Private Sub Fermer_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Fermer.Click Me.Close() End Sub Private Sub Save_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Save.Click dts.Clear() dta = New OleDbDataAdapter("SELECT TypeDeProduit.Type_de_produit FROM TypeDeProduit", cnx) dta.Fill(dts, "Type_de_produit") dtr = dts.Tables("Type_de_produit").NewRow dtr(0) = Me.TextBox1.Text MessageBox.Show("Bien ajouté") dts.Tables("Type_de_produit").Rows.Add(dtr) DataGridView1.DataSource = dts DataGridView1.DataMember = dts.Tables("Type_de_produit").ToString cmdb = New OleDbCommandBuilder(dta) dta.Update(dts, "Type_de_produit") Me.TextBox1.Text = String.Empty End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click dtr = dts.Tables("Type_de_produit").NewRow dts.Tables("Type_de_produit").Rows.Add(dtr) End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click For Each row As DataGridViewRow In DataGridView1.SelectedRows DataGridView1.Rows.Remove(row) Next End Sub End Class
Partager