2014-10-30 96 views
0

我有一個通用列表,如下所示。C#中的通用列表排序#

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

現在下拉列表中既有值又有文本。現在我可以使用通用列表按文本排序。

請幫忙。 我不能使用LinQ

+0

你不能使用Linq,因爲你不知道如何,或者因爲這是一項家庭作業? – 2014-10-30 01:57:19

+0

[在LINQ中使用C#排序列表](http://stackoverflow.com/questions/4003835/sort-list-in-c-sharp-with-linq) – Adrian 2014-10-30 02:00:41

+0

@Adrian我猜「我無法使用LinQ「意味着他們不允許因爲某些限制。所以這個鏈接對他們來說不起作用。 – metacubed 2014-10-30 02:05:53

回答

0

如果我正確地理解了這個問題(而且我可能不......這個問題不是很清楚),那麼您想按類別UsrProfile的特定成員對列表進行排序。具體來說,Text屬性。

這很容易:lst.Sort((u1, u2) => u1.Text.CompareTo(u2.Text));應該做你想做的。

這將Comparison<UsrProfile>委託實例傳遞給List<UsrProfile>.Sort()方法,允許它自定義用於排序的比較邏輯。在這種情況下,不是比較整個UsrProfile對象,而是比較對象之間的Text屬性。