Hallo zusammen,
ich binde ein DataTable an ein DataGridView und Textboxen, vorerts zum Anzeigen:
Private Sub SelectDataUser(ByVal sqlStr As String, ByVal dgv As _
DataGridView, ByVal bs As BindingSource)
daU = New OleDbDataAdapter(sqlStr, strConnString)
dtU = New DataTable("tblUser")
daU.Fill(dtU)
bs.DataSource = dtU
dgv.DataSource = bs
End Sub ... und ...
Private Sub DataBindingUser()
For Each ctl As Control In grpUser.Controls
ctl.DataBindings.Clear()
Next
With Me
.txtAnrede.DataBindings.Add("Text", bsUser, "Anrede")
.txtVorname.DataBindings.Add("Text", bsUser, "Vorname")
.txtNachname.DataBindings.Add("Text", bsUser, "Nachname")
.txtOrt.DataBindings.Add("Text", bsUser, "Ort")
.txtDEKennung.DataBindings.Add("Text", bsUser, "DE_Kennung")
.txtKostenstelle.DataBindings.Add("Text", bsUser, "Kostenstelle")
.txtAbteilung.DataBindings.Add("Text", bsUser, "Abteilung")
End With
End Sub Die TextBoxes werden gebunden, wenn der entsprechende Datensatz aus der DataGridView angewählt wird:
Private Sub DataBindingUser()
For Each ctl As Control In grpUser.Controls
ctl.DataBindings.Clear()
Next
With Me
.txtAnrede.DataBindings.Add("Text", bsUser, "Anrede")
.txtVorname.DataBindings.Add("Text", bsUser, "Vorname")
.txtNachname.DataBindings.Add("Text", bsUser, "Nachname")
.txtOrt.DataBindings.Add("Text", bsUser, "Ort")
.txtDEKennung.DataBindings.Add("Text", bsUser, "DE_Kennung")
.txtKostenstelle.DataBindings.Add("Text", bsUser, "Kostenstelle")
.txtAbteilung.DataBindings.Add("Text", bsUser, "Abteilung")
End With
End Sub Beim Klick auf einen Button "Daten bearbeiten" kann man die TextBoxes bearbeiten und beim Klick auf Speichern führe ich folgenden Code auf:
Private Sub btnSpeichernUser_Click(ByVal sender As System.Object, ByVal e _
As System.EventArgs) Handles btnSpeichernUser.Click
If MessageBox.Show("Wollen Sie den Datensatz wirklich speichern?", _
"Datensatz speichern?", MessageBoxButtons.YesNo, _
MessageBoxIcon.Warning, _
MessageBoxDefaultButton.Button2) = _
DialogResult.Yes Then
bsUser.EndEdit()
dtU.AcceptChanges()
daU.Update(dtU)
' Button Speichern ausblenden
btnSpeichernUser.Visible = False
' Button Bearbeiten wieder einblenden
btnBearbeiten.Enabled = True
Else
' wenn auf 'Nein' (nicht speichern) geklickt wurde, Sub verlassen
Exit Sub
End If
End Sub Anscheinend wird das Datatable-Objekt auch aktualisiert, er gibt die Informationen aber nicht an die Datenbank weiter.
Wo liegt hier das Problem?
Vielen Dank für Eure Hilfe,
Grüße Dave. |