bijkomende vragen
Hey,
bedankt voor de respons.
Ik zit met 2 vragen:
1. Bij het uitwerken van de txtfield ("Naamvoornaam") krijg ik het resultaat dat de datagrid wordt bijgewerkt, maar
de combobox die zich niet in de datagrid bevind, blijft gevuld met de oude data (niet bijgewerkte velden van de kolom "Naamvoornaam").
Is er een mogelijkheid om die combobox met code te herupdaten (een soort van re-query)?
2. Updaten van de veranderde fields van de datagrid kan ik met een aparte knop (knop 'bijwerken'), maar kan dat ook in
de code zelf gebeuren? Mijn code heb ik hieronderaan gekleefd, maar die doete niets, de update doet het wel met dezelfde code in de knop bijwerken.
Code knop bijwerken:
Private Sub btnBijwerken_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBijwerken.Click
Dim Updatecmd As SqlCommand = Cn.CreateCommand
Updatecmd.CommandText = "Update Klant Set Klant.Naamvoornaam=@Naamvoornaam, Klant.Adres=@Adres, Klant.Huisnummer=@Huisnummer, Klant.Telefoonnummer=@Telefoonnummer, Klant.GSMnummer=@GSMnummer, Klant.Email=@Email, Klant.KlantMaat=@Klantmaat where Klantnummer=@Klantnummer"
Updatecmd.Parameters.AddWithValue("Klantnummer", ComboBox1.SelectedValue)
Updatecmd.Parameters.Add("Naamvoornaam", SqlDbType.NVarChar, 40, "Naamvoornaam")
Updatecmd.Parameters.Add("Adres", SqlDbType.NVarChar, 40, "Adres")
Updatecmd.Parameters.Add("Huisnummer", SqlDbType.NVarChar, 15, "Huisnummer")
Updatecmd.Parameters.Add("Telefoonnummer", SqlDbType.NVarChar, 15, "Telefoonnummer")
Updatecmd.Parameters.Add("GSMnummer", SqlDbType.NVarChar, 15, "GSMnummer")
Updatecmd.Parameters.Add("Email", SqlDbType.NVarChar, 50, "Email")
Updatecmd.Parameters.Add("Klantmaat", SqlDbType.NVarChar, 75, "Klantmaat")
DaKlant.UpdateCommand = Updatecmd
Dim Aantal As Integer = DaKlant.Update(TaKlant)
End Sub
code datagrid cellcontentclick
Private Sub DataGridView1_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellContentClick
Dim strInt As String
strInt = InputBox("Vul de waarde met deze tekst", CStr(DataGridView1(e.ColumnIndex, e.RowIndex).Value))
If strInt = " " Then
MessageBox.Show("Je moet iets invullen, anders blijft het veld zoals het is.")
Exit Sub
ElseIf strInt = "" Then
Exit Sub
Else
DataGridView1(e.ColumnIndex, e.RowIndex).Value = strInt.ToString
Dim Updatecmd As SqlCommand = Cn.CreateCommand
Updatecmd.CommandText = "Update Klant Set Klant.Naamvoornaam=@Naamvoornaam, Klant.Adres=@Adres, Klant.Huisnummer=@Huisnummer, Klant.Telefoonnummer=@Telefoonnummer, Klant.GSMnummer=@GSMnummer, Klant.Email=@Email, Klant.KlantMaat=@Klantmaat where Klantnummer=@Klantnummer"
Updatecmd.Parameters.AddWithValue("Klantnummer", ComboBox1.SelectedValue)
Updatecmd.Parameters.Add("Naamvoornaam", SqlDbType.NVarChar, 40, "Naamvoornaam")
Updatecmd.Parameters.Add("Adres", SqlDbType.NVarChar, 40, "Adres")
Updatecmd.Parameters.Add("Huisnummer", SqlDbType.NVarChar, 15, "Huisnummer")
Updatecmd.Parameters.Add("Telefoonnummer", SqlDbType.NVarChar, 15, "Telefoonnummer")
Updatecmd.Parameters.Add("GSMnummer", SqlDbType.NVarChar, 15, "GSMnummer")
Updatecmd.Parameters.Add("Email", SqlDbType.NVarChar, 50, "Email")
Updatecmd.Parameters.Add("Klantmaat", SqlDbType.NVarChar, 75, "Klantmaat")
DaKlant.UpdateCommand = Updatecmd
Dim Aantal As Integer = DaKlant.Update(TaKlant)
MessageBox.Show(Aantal & " record(s) bijgewerkt ", My.Application.Info.Title)
End If
Grt,
John