[FRAGE] Alle LISTBOX Einträge mit einem Klick auf Button speichern?!

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von NiKo95.

    [FRAGE] Alle LISTBOX Einträge mit einem Klick auf Button speichern?!

    Hallo liebe com,
    ich bin gerade dabei ein Programm zuschreiben, dass bei Klick auf einen Button ALLE Listboxeinträge speichern soll und , wenn mann das Programm dann neustartet soll die Listbox leer sein. Sie soll erst wieder gefüllt werden wenn mann auf den Button2 klickt (er soll die bei der letzten Benutzung gespeicherten Listboxeinträge wieder in die Listbox einfügen/also öffen Button).
    Da ich noch ein relativ gesehener Anfänger bin , ist mein Code noch nicht so gut , aber ich lade ihn noch hier hoch.

    VB.NET-Quellcode

    1. Private Sub Button2_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SpeichernButton.Click
    2. Dim w As New IO.StreamWriter("C:\Sok.txt")
    3. w.Write(ListBox1.Text)
    4. w.Close()
    5. End Sub
    6. Private Sub Button3_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OeffnenButton.Click
    7. Dim r As New IO.StreamReader("C:\Sok.txt")
    8. ListBox1.Text = r.ReadToEnd
    9. r.Close()
    10. End Sub


    Ja, leider wird dann nur der gerade ausgewählte Eintrag gespeichert, aber ich will ja alle speichern.

    Ich hoffe ihr könnt mir helfen =)

    MfG
    Du kannst jedes Item einzeln durchgehen:

    VB.NET-Quellcode

    1. Public Sub SaveListBox(ByVal ListBox As ListBox, ByVal Pfad As String)
    2. Dim _list As String = ""
    3. For i As Integer = 0 To ListBox.Items.Count - 1
    4. ListBox.SelectedIndex = i
    5. _list &= ListBox.Text & vbCrLf
    6. Next
    7. _list = _list.Remove(_list.LastIndexOf(vbCrLf), 1)
    8. IO.File.WriteAllText(Pfad, _list)
    9. End Sub
    10. Public Sub LoadListBox(ByVal ListBox As ListBox, ByVal Pfad As String)
    11. Dim _list As String
    12. If Not IO.File.Exists(Pfad) Then
    13. MessageBox.Show("Datei nicht gefunden")
    14. Else
    15. _list = IO.File.ReadAllText(Pfad)
    16. ListBox.Items.Clear()
    17. For Each line As String In _list.Split(vbCrLf)
    18. ListBox.Items.Add(line)
    19. Next
    20. End If
    21. End Sub
    (Aus nem anderen Post von mir in einem anderen Thread: vb-paradise.de/programmieren/h…ox-adressbuch/#post287268)


    Grüsse
    Pascal