2010-12-09 10 views
3

Ich habe zwei datengebundene Listboxen. Der erste zeigt nur Artikel an, die meinem Produkt zugewiesen wurden. Die zweite Listbox zeigt alle verfügbaren Elemente. Ich möchte alle Elemente in Listbox 2 auswählen, die in der Listbox enthalten sind.wählen Sie mehrere Elemente in asp.net Listbox aus Code

Zum Beispiel:
ListBox1-
Artikel 1
Artikel 3

ListBox2-
Artikel 1 (ausgewählt)
Artikel 2
Artikel 3 (ausgewählt)

-Code Ich habe :

List<string> myList = new List<string>(); 
      foreach(ListItem f in ListBoxSourceDetail.Items) 
      { 
       myList.Add(f.Value); 
      } 
      myList.ForEach(delegate(string n) 
      { 
       ListBoxSourceEdit.SelectedValue = n; 
      }); 

Antwort

4

Ich fand es heraus, ich war darüber nachgedacht es ... Durchschlinge jedes Listenelement in der ersten Box und finde dann jedes passende Ergebnis in der zweiten Tabelle, die ausgewählt werden soll.

foreach(ListItem i in ListBoxSourceDetail.Items) 
     { 
      ListBoxSourceEdit.Items.FindByText(i.ToString()).Selected = true; 

     } 
+0

Sie sollten wahrscheinlich nach Wert nicht Text finden. In der Regel ist der Wert eindeutig, wenn dies beim Text nicht unbedingt der Fall ist. –

+0

@Adam Spicer, stimme ich zu, aber in diesem Fall ist es in Ordnung, weil die Elemente aus einer Tabelle stammen, die doppelte Werte nicht zulassen. –

Verwandte Themen