2009-05-05 4 views
0

Ich habe ein Dropdown, in dem wir bestimmte Elemente hinzufügen, nachdem das Dropdown von Daten aus der Datenbank gebunden ist, daher die Notwendigkeit, das Dropdown zu sortieren, entsteht. Also muss ich ein DropDown sortieren, das Duplikate haben kann. Was ist der beste Weg, dies zu tun?Asp.net: Wie sortiere ich ein Dropdown mit Duplikaten?

+0

Was ist Ihr Datenquellentyp? DataReader, Liste, Wörterbuch, Array? – balexandre

+0

Die Datenquelle ist eine Liste – renegadeMind

Antwort

2

Statt Elemente direkt auf das Dropdown hinzufügen, würde ich vorschlagen, sie auf die Datenstruktur hinzugefügt, die Sie zu binden. Wenn die Elemente in dieser Struktur IComparable implementieren, können Sie eine Vergleichsmethode definieren, um die Sortierung anzuwenden, bevor das Dropdown tatsächlich an die Datenquelle gebunden ist.

0

Sie Bindung an eine generische Liste Vorausgesetzt, dass Sie so etwas wie dies versuchen:

var ddlFoo = new List<foo>(); 
    foreach (var lc in myDropDownList.Items) 
    { 
     ddlFoo.Add((foo)lc); 
    } 
    myDropDownList.DataSource = ddlFoo.OrderBy(dl => dl.fooID); 
    myDropDownList.Databind();