2016-07-01 7 views
-1

Dies ist mein CodeItemShow nicht in ListBox

private void button1_Click(object sender, EventArgs e) 
    { 



     _items.Add(mojTelefon.Naziv); 
     _items.Add(mojTelefon.Specifikacije); 
     _items.Add(mojTelefon.Proizvodjac); 
     _items.Add(mojTelefon.Opis); 
     _items2.Add(mojTelefon.Kolicina); 



     listBox1.DataSource = _items2; 
     listBox1.DataSource = _items; 



    } 

effekten2 ein int-Wert wird, wenn i-Taste auf dem Formular drücken, zeigt er Gegenstände aber nicht effekten2 ... Kann jemand plz help

+0

Listendatenquelle kann nicht mehrere Listen enthalten. Sie müssen alle Ihre Werte zu einer Liste hinzufügen und diese Liste als Datenquelle zuweisen. – Hakunamatata

+0

Weil Sie die Datenquelle überschreiben. Der letzte Code funktioniert. Die Datenquelle sind also Artikel. – Berkay

+0

Sie müssen _items2 zu listBox2 zuweisen. Sie überschreiben listBox1.DataSource mit _items –

Antwort

2

ListBox erlaubt es nicht, mehrere Einstellung DataSources

ich würde die Listen vorschlagen fusionieren beide und setzen als DataSource

_items.AddRange(_items2) 
listBox1.DataSource = _items; 

oder, wenn Sie _items & _items2 für spätere Referenz benötigen, können Sie wie unten gezeigt neue List erstellen und verwenden.

List<string> list = new List<string>(); 
list.AddRange(_items2) 
list.AddRange(_items); 
listBox1.DataSource = list; 

Alternativ (wie @Vincent erwähnt) auch Linq Erweiterungen nutzen könnten neue List wie unten zu schaffen.

listBox1.DataSource = _items.Concat(_items2).ToList(); 
+0

Sie könnten auch einfach gehen 'listBox1.DataSource = _items.Concat (_items2) .ToList()' –

+0

Absichtlich fiel diese Idee, es zu sein, Voraus OP, aber scheint es ist eine gute Idee, dies auch zu erwähnen. Ich werde es aktualisieren. –