Hallo,
ich habe schon erfolgreich eine WinForms-Anwendung erstellt und wollte mich jetzt mal an WPF wagen.
Ich habe eine Listview, welche mit TextBoxen und einem Button gefüllt wird. (mehrere Spalten und Zeilen)
Meine Frage wäre jetzt, wie ich diese Listview in eine .txt Datei speichern kann und beim nächsten Start der Anwendung wieder laden kann.
In WinForms hab ich folgenden Code (Visual Basic):
zum speichern:
zum laden:
Button:
In Form-Load:
Doch wie kann ich das in WPF realisieren?
Danke im Voraus!
ich habe schon erfolgreich eine WinForms-Anwendung erstellt und wollte mich jetzt mal an WPF wagen.
Ich habe eine Listview, welche mit TextBoxen und einem Button gefüllt wird. (mehrere Spalten und Zeilen)
Meine Frage wäre jetzt, wie ich diese Listview in eine .txt Datei speichern kann und beim nächsten Start der Anwendung wieder laden kann.
In WinForms hab ich folgenden Code (Visual Basic):
zum speichern:
VB.NET-Quellcode
- Public Sub lvw_WriteData(ByVal lvw As ListView, ByVal sDataFile As String)
- Dim sw As New StreamWriter(My.Settings.Speicherort & "\Sammlung.txt", False,
- System.Text.Encoding.Default)
- If SammlungListe.Items.Count = 0 Then
- Exit Sub
- Else
- Using sw
- For Each li As ListViewItem In SammlungListe.Items
- sw.Write(li.Text)
- sw.Write(" $ ")
- For i As Integer = 1 To li.SubItems.Count - 1
- sw.Write(li.SubItems(i).Text)
- sw.Write(" $ ")
- Next i
- sw.WriteLine()
- Next
- End Using
- End If
- End Sub
zum laden:
VB.NET-Quellcode
- Public Sub lvw_ReadData(ByVal lvw As ListView, ByVal sDataFile As String,
- Optional ByVal bAppend As Boolean = False)
- If Not bAppend Then SammlungListe.Items.Clear()
- If File.Exists(My.Settings.Speicherort & "\Sammlung.txt") = False Then
- File.Create(My.Settings.Speicherort & "\Sammlung.txt")
- Else
- Dim AnzahlSpalten As Integer = SammlungListe.Columns.Count
- Dim line As String = Nothing
- Dim sItem() As String
- Dim sLine As String
- Dim itemX As ListViewItem
- Dim i As Integer
- Dim SR As New StreamReader(My.Settings.Speicherort & "\Sammlung.txt", System.Text.Encoding.Default)
- With SammlungListe.Items
- Do Until SR.EndOfStream = True
- 'Linie einlesen und aufteilen
- sLine = SR.ReadLine()
- sItem = Split(sLine, " $ ")
- ' Falls die Anzahl Datenspalten nicht mit der
- ' Anzahl Spalten im ListView übereinstimmen, -> Array
- ' "zurechtrücken"
- If UBound(sItem) <> AnzahlSpalten Then
- ReDim Preserve sItem(AnzahlSpalten)
- End If
- itemX = SammlungListe.Items.Add(sItem(0), sItem(1))
- 'Subitems einlesen
- For i = 1 To AnzahlSpalten
- itemX.SubItems.Add(sItem(i))
- Next i
- Loop
- End With
- SR.Close()
- End If
- End Sub
Button:
In Form-Load:
Doch wie kann ich das in WPF realisieren?
Danke im Voraus!