2014-10-30 8 views
0

У меня есть общий список, как показано ниже.Сортировка общего списка в C#

List<UsrProfile> lst = GetUsers(); 
lst.Sort(); 
ddlUser1.DataSource = lst; 
ddlUser1.DataBind(); 

Теперь выпадающее меню имеет значение и текст. Теперь я сортирую по тексту, используя общий список.

Пожалуйста, помогите. Я не могу использовать LinQ

+0

Вы не можете использовать Linq, потому что вы не знаете, как, или потому, что это домашнее задание? –

+0

Возможный дубликат [Список сортировки в C# с LINQ] (http://stackoverflow.com/questions/4003835/sort-list-in-c-sharp-with-linq) – Adrian

+0

@Adrian Я предполагаю, что «я не могу использовать LinQ "означает, что им не разрешено из-за некоторых ограничений. Так что ссылка не будет работать для них. – metacubed

ответ

0

Если я правильно понял вопрос (и я не могу ... это не очень понятно), вы хотите отсортировать список по определенному члену класса UsrProfile. В частности, свойство Text.

Это легко сделать: lst.Sort((u1, u2) => u1.Text.CompareTo(u2.Text)); должен делать то, что вы хотите.

Это передает делегат Comparison<UsrProfile> методу List<UsrProfile>.Sort(), позволяя ему настраивать логику сравнения, используемую для сортировки. В этом случае, вместо сравнения целых объектов UsrProfile друг с другом, он просто сравнивает свойство Text между объектами.