2012-03-26 32 views
0

我有一個集合:WP7的ObservableCollection排序

public ObservableCollection<Shops> ShopList { get; set; } 

再經過我把4種元素在它(這是正確顯示),我嘗試對它們進行排序

ShopList.Clear(); 
var orderedlist = ShopList.OrderBy(k => k.Name); 
foreach (Shops s in orderedlist) 
    ShopList.Add((Shops)s); 

ShopList現在有4個空元素。爲什麼是這樣,以及如何糾正代碼? 感謝

+2

'ShopList.Clear();'明確的清單:) – Ku6opr 2012-03-26 09:51:50

+0

是啊,我愚蠢,錯誤的順序:DD – 2012-03-26 09:54:42

+0

也許你有興趣在' SortedObservableCollection':http://phillters.wordpress.com/2009/05/14/sortedobservablecollection/ – Ku6opr 2012-03-26 10:15:33

回答

2

這是正確的順序:

var orderedlist = ShopList.OrderBy(k => k.Name); 
ShopList.Clear(); 
foreach (Shops s in orderedlist) 
    ShopList.Add((Shops)s); 
+0

那對我不好,如果你清除shoplist,orderedlist將會有null元素,我設法解決它購買複製元素到新集合,然後清除 – 2012-03-26 18:44:35

相關問題