Kopiowanie listboxa do jednej linii

0

Witam,
mam taki kod:

 private void button3_Click_1(object sender, EventArgs e)
        {

            using (StreamWriter sw = new StreamWriter("list.txt"))
            {

                foreach (String itemText in listBox1.Items)
                {

                    sw.WriteLine(itemText);

                }
                foreach (String itemText in listBox2.Items)
                {

                    sw.WriteLine(itemText);

                }

Powoduje on, że zawartość listboxa1 i zawartość listboxa2 jest kopiowana do notatnika. Tylko, że jeżeli mam np. 2 elementy w listoboxie1, i 1 element w listboxie 2 to w notatniku pojawiają się i tak te 3 zapisy kolejno pod sobą. Chciałbym zrobić tak, że w pierwszej linii pojawiają się elementy z listboxa1, a w drugiej z listboxa2. Jak można coś takiego uzyskać?

2

Po prostu zamiast WriteLine użyj Write (ew. do tekstu dodaj jakiś separator np. spację) a pomiędzy pętlami wstaw

sw.Write(Environment.NewLine);
0

A czy jesteś jakiś sposób by wskazać na konkretną linię w notatniku? Np. chciałbym, żeby tekst z listboxa 1 był umieszczany tylko w trzech początkowych liniach.
Przewiduję, że w listboxie 1 pojawią się trzy wyniki, a w listboxie2 pojawią się 2 wyniki. Napisałem funkcję, która wczytuje potem wyniki z notatnika, ale dla listboxu 1 czyta tylko z pierwszych trzech linijek, a dla listboxu2 - z linijek 4,5,6. Jeżeli w momencie zapisu w listboxie 1 będzie tylko jeden rekord, a w listboxie2 będą trzy, to wiadomo jaki będzie efekt przy wczytywaniu. Chciałbym jakoś konkretnie przypisać te linie wartościom z listboxów. Tak, żeby mimo braku rekordów z listboxu1, wyniki z listboxu2 automatycznie lądowały na 4,5,6 linie.

1

Przy zapisywaniu dopisuj puste linie jeśli ilość itemów w listboxie jest mniejsza niż 3.

1 użytkowników online, w tym zalogowanych: 0, gości: 1