Visual Basic 2010 mehrere Listboxen speichern

  • VB.NET

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von TheProfiman.

    Visual Basic 2010 mehrere Listboxen speichern

    Hallo,
    ich habe das Problem das ich mehrere(7) Listboxen in My.Settings speichern möchte.
    Ich habe von Youtube jemanden gefunden der 1 Listbox in My.settings speichert und ich habe schon versucht das so oft zu machen wie viele Listboxen ich habe, aber das funktioniert irgendwie nicht.
    Mein Quellcode zum speichern sieht so aus:

    VB.NET-Quellcode

    1. Dim save As String For i As Integer = 0 To ListBox1.Items.Count - 1 If save = "" Then
    2. save = ListBox1.Items(i) Else save = save & vbNewLine & ListBox1.Items(i) End If Next My.Settings.lbn1 = save For i As Integer = 0 To ListBox2.Items.Count - 1 If save = "" Then
    3. save = ListBox2.Items(i) Else save = save & vbNewLine & ListBox2.Items(i) End If Next My.Settings.lbn2 = save For i As Integer = 0 To ListBox3.Items.Count - 1 If save = "" Then
    4. save = ListBox3.Items(i) Else save = save & vbNewLine & ListBox3.Items(i) End If Next My.Settings.lbn3 = save For i As Integer = 0 To ListBox4.Items.Count - 1 If save = "" Then
    5. save = ListBox4.Items(i) Else save = save & vbNewLine & ListBox4.Items(i) End If Next My.Settings.lbn4 = save For i As Integer = 0 To ListBox5.Items.Count - 1 If save = "" Then
    6. save = ListBox5.Items(i) Else save = save & vbNewLine & ListBox5.Items(i) End If Next My.Settings.lbn5 = save For i As Integer = 0 To ListBox6.Items.Count - 1 If save = "" Then
    7. save = ListBox6.Items(i) Else save = save & vbNewLine & ListBox6.Items(i) End If Next My.Settings.lbn6 = save For i As Integer = 0 To ListBox7.Items.Count - 1 If save = "" Then
    8. save = ListBox7.Items(i) Else save = save & vbNewLine & ListBox7.Items(i) End If Next My.Settings.lbn7 = save


    Und zum laden:

    VB.NET-Quellcode

    1. Dim laden1 As New RichTextBox Dim laden2 As New RichTextBox Dim laden3 As New RichTextBox Dim laden4 As New RichTextBox Dim laden5 As New RichTextBox Dim laden6 As New RichTextBox Dim laden7 As New RichTextBox laden1.Text = My.Settings.lb1 For i As Integer = 0 To laden1.Lines.Count - 1 ListBox1.Items.Add(laden1.Lines(i)) Next laden2.Text = My.Settings.lbn2 For i As Integer = 0 To laden2.Lines.Count - 1 ListBox2.Items.Add(laden2.Lines(i)) Next laden3.Text = My.Settings.lbn3 For i As Integer = 0 To laden3.Lines.Count - 1 ListBox3.Items.Add(laden3.Lines(i)) Next laden4.Text = My.Settings.lbn4 For i As Integer = 0 To laden4.Lines.Count - 1 ListBox4.Items.Add(laden4.Lines(i)) Next laden5.Text = My.Settings.lbn5 For i As Integer = 0 To laden5.Lines.Count - 1 ListBox5.Items.Add(laden5.Lines(i)) Next laden6.Text = My.Settings.lbn6 For i As Integer = 0 To laden6.Lines.Count - 1 ListBox6.Items.Add(laden6.Lines(i)) Next laden7.Text = My.Settings.lbn7 For i As Integer = 0 To laden7.Lines.Count - 1 ListBox7.Items.Add(laden7.Lines(i)) Next


    Bitte um schnelle Antwort
    ListBox in Datei lesen/schreiben : vbarchiv.net/faq/faq_listbox_save_net.html

    Nimmst zwei schleifen. Mit erste schleife läufst alle ListBoxen auf deine Form durh (siehe Controls Array/Aufliestungen) und mit Zweite Schleife läust alle Items in Listbox durch und schreibst in datei. (siehe verschachtelte schleifen)

    oder

    Du schreibst für jede Lisbox Funtkion zum lesen/schreiben in datei <<<<umständlich/unübersichtlich

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „SystemUnknow“ ()

    Also...kann man das nicht deutlich einfacher lösen, indem man den Wert in My.Settings als "List(of ListBox)" deklariert? Und dann zum speichern einfach jede ListBox dieser Liste hinzufügt. Beim Laden dann einfgach die Liste durchlaufen, und die enthaltenen Controls der Form wieder zufügen, oder in einer 2.Schleife den Inhalt der Items auslesen.

    MfG

    SystemUnknow schrieb:

    ListBox in Datei lesen/schreiben : vbarchiv.net/faq/faq_listbox_save_net.html

    Nimmst zwei schleifen. Mit erste schleife läufst alle ListBoxen auf deine Form durh und mit Zweite Schleife läust alle Items in Listbox durch und schreibst in datei. (siehe verschachtelte schleifen)

    oder

    Du schreibst für jede Lisbox Funtkion zum lesen/schreiben in datei <<<

    Was meinst du mit "Mit erste schleife läufst alle ListBoxen auf deine Form durch"?
    (Ich bin noch vb anfänger)