Ganz komisch, ich habe das gleiche gemacht. Bei .AddNew() werden die TextBoxen geleert und die neuen Sätze werden abgespeichert. Wie ich erwarten würde, ich benutze BindingSource schon einige Jahre ohne Problem. Hier ist mein Code
Public Class Form1
Dim tblArtikel As DataTable = New DataTable("Artikel")
Dim bs As New BindingSource
Private Sub frmArtikel_Load(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles MyBase.Load
Artikeltabelle_Spalten_erstellen()
Formularfelder_binden()
'zeilen_generieren()
End Sub
Public Const datei As String = "C:\artikel.xml"
Private Sub Artikeltabelle_Spalten_erstellen()
Dim column As DataColumn
column = New DataColumn()
column.DataType = System.Type.GetType("System.Int32")
column.ColumnName = "Artikel_ID"
column.AutoIncrement = True
column.ReadOnly = True
column.Unique = True
tblArtikel.Columns.Add(column)
column = New DataColumn
column.DataType = System.Type.GetType("System.String")
column.ColumnName = "Artikel_Nr"
column.AutoIncrement = False
column.ReadOnly = False
column.Unique = False
tblArtikel.Columns.Add(column)
If IO.File.Exists(datei) Then
tblArtikel.ReadXml(datei)
End If
End Sub
Private Sub Formularfelder_binden()
bs.DataSource = tblArtikel
txt_artikelnr.DataBindings.Add("Text", bs, "Artikel_Nr")
'txt_menge.DataBindings.Add("Text", bs, "Menge")
'txt_artikelbezeichnung.DataBindings.Add("Text", bs,
' "Artikelbezeichnung")
'txt_ustsatz.DataBindings.Add("Text", bs, "UST_Satz")
'txt_netto.DataBindings.Add("Text", bs, "Netto")
'txt_mwst.DataBindings.Add("Text", bs, "MwSt")
'txt_brutto.DataBindings.Add("Text", bs, "Brutto")
'txt_kategorie.DataBindings.Add("Text", bs, "Kategorie")
'txt_bezugsquelle.DataBindings.Add("Text", bs, "Bezugsquelle")
'txt_einheit.DataBindings.Add("Text", bs, "Einheit")
'chk_aktiv.DataBindings.Add("Checked", bs, "Aktiv")
End Sub
Private Sub btn_artikel_vor_Click(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles Vor.Click
bs.MoveNext()
End Sub
Private Sub btn_artikel_zurück_Click(ByVal sender As System.Object, ByVal e _
As System.EventArgs) Handles Zurück.Click
bs.MovePrevious()
End Sub
Private Sub Neu_Click(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles Neu.Click
bs.AddNew()
End Sub
Private Sub Save_Click(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles Save.Click
bs.EndEdit()
tblArtikel.WriteXml(datei)
End Sub
End Class ________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist |