2013-12-12 17 views
1

我有一個相當小的表,包含兩列 - 一個是字符串,一個應該是數字(我知道,表中的所有內容都只是「對象」)。 有沒有辦法將對象轉換爲例如Int或Double,以便能夠以合理的方式實際對它進行排序?如何對錶中的數字進行排序?

enter image description here

該表的來源是兩份名單。我可以對數字列表進行排序,但數據不再匹配。 其他想法是將列表的內容轉移到多維數組中,並對其進行排序,但我更喜歡直接對該表進行排序的解決方案。

有人有想法嗎?

+0

坦率地說,我會從改變它開始,以便數據來自單個對象列表而不是2個列表。然後,它只是一個'list.Sort((x,y)=> x.Foo.CompareTo(y.Foo));' –

+0

像嵌套列表或新的列表類? – MeepMania

+0

定製類的常規列表...將解釋... –

回答

1

,而不是兩個表工作,將它們合併:

public class MyRow { // rename me 
    public int Element { get; set; } 
    public int Appearances { get; set; } 
} 
.... 
var rows = new List<MyRow>(); 
for(...) {// loop over the two lists... 
    rows.Add(new MyRow { 
     Element =..., Appearances = ... }); 
} 
rows.Sort((x,y) => y.Appearances.CompareTo(x.Appearances)); 

然後要麼只是循環,創造細胞,或(更容易)剛剛成立rows作爲數據源的表,讓它綁定本身。

相關問題