Schau Dir bitte das nachfolgende Beispiel an, wie man Daten mittels einer DataTable in einer XML-Datei speichert und zur Anzeige nutzt. Die benötigten Komponenten sind in der Beschreibung enthalten. Du solltest damit schaffen, Dein Programm entsprechend erweitern zu können:
'Für dieses Beispiel benötigt man eine Textbox namens "Plombennummer",
'eine Textbox namens "Euro", eine Textbox namens "Einweg", einen
'Buttons namens "Speichern" und ein DataGridView namens "dgvLog".
'Es wird eine DataTable angelegt, welche Daten anzeigt, sofern vorhanden,
'welche sich in einer XML-Datei im definierten Zielverzeichnis befindet.
'Bei jedem Speichern werden die neuen Daten den alten hinzu gefügt.
Public Class Form1
Dim dt As New DataTable
Dim Zielverzeichnis As String = "c:\plombentmp\"
Dim LogDatei As String = "c:\plombentmp\dtLog.xml"
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) _
Handles MyBase.Load
If System.IO.Directory.Exists(Zielverzeichnis) = False Then
System.IO.Directory.CreateDirectory(Zielverzeichnis)
End If
dt.Columns.Add("Plombennummer")
dt.Columns.Add("Euro")
dt.Columns.Add("Einweg")
dt.Columns.Add("Logdatei")
dt.TableName = "Plombentabelle"
With dgvLog
.DataSource = dt
.ReadOnly = True
.AllowUserToAddRows = False
.AllowUserToDeleteRows = False
.SelectionMode = DataGridViewSelectionMode.FullRowSelect
.MultiSelect = False
.RowHeadersVisible = False
.ScrollBars = ScrollBars.Both
.RowsDefaultCellStyle.BackColor = Color.White
.AlternatingRowsDefaultCellStyle.BackColor = Color.AliceBlue
.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill
End With
If My.Computer.FileSystem.FileExists(LogDatei) = False Then
dt.WriteXml(Zielverzeichnis & LogDatei)
Else
dt.ReadXml(LogDatei)
End If
Application.DoEvents()
End Sub
Private Sub Speichern_Click(sender As System.Object, e As System.EventArgs) _
Handles Speichern.Click
Dim strPlombennummer As String = Plombennummer.Text
Dim strEuro As String = Euro.Text
Dim strEinweg As String = Einweg.Text
Dim Dateiname As String = Format(Now, "yyyyMMdd_hhmmss") & ".txt"
'Nach "DateiSchreiben(Zielverzeichnis, Dateiname, Text)
dt.Rows.Add(strPlombennummer, strEuro, strEinweg, Dateiname)
dt.WriteXml(LogDatei)
End Sub
End Class EALA FREYA FRESENA |