3
Q
顯示樹狀風格
A
回答
2
鑑於此對象:
public class MyObject
{
public string Sore { get; set; }
public int aye { get; set; }
}
有了這些數據:
var ls=new List<MyObject>();
ls.Add(new UserQuery.MyObject(){Sore="A",aye=1});
ls.Add(new UserQuery.MyObject(){Sore="A",aye=2});
ls.Add(new UserQuery.MyObject(){Sore="A",aye=3});
ls.Add(new UserQuery.MyObject(){Sore="B",aye=1});
ls.Add(new UserQuery.MyObject(){Sore="B",aye=2});
你可以做到這一點很簡單:
var result=ls.GroupBy (l =>l.Sore)
.Select (l =>new
{
Root= l.Key,
Children=l.Select (x =>x.aye)
}
).ToList();
然後就是循環列表:
foreach (var root in result)
{
//root.Root to the root node
foreach(var child in root.Children)
{
//Add the child to the root nodes children
}
}
1
var str = "Sore | aye\r\nA | 1 \r\nA | 2\r\nA | 3\r\nB | 1\r\nB | 2";
var relations = str.Split(new[] {Environment.NewLine},
StringSplitOptions.RemoveEmptyEntries)
.Skip(1).Select(l => l.Split('|').Select(
x => x.Trim()).ToArray()).ToArray();
var relationsDic = new SortedDictionary<string, SortedSet<string>>();
foreach (var relation in relations)
{
if (relationsDic.ContainsKey(relation[0]))
{
relationsDic[relation[0]].Add(relation[1]);
}
else
{
relationsDic[relation[0]] = new SortedSet<string> {relation[1]};
}
}
foreach (var kvp in relationsDic)
{
Console.WriteLine(kvp.Key);
foreach (var sub in kvp.Value)
{
Console.WriteLine("\t" + sub);
}
}
相關問題
- 1. 如何在WPF中顯示樹狀風格?
- 2. 以樹狀格式顯示數組
- 3. D3樹狀圖 - 未顯示
- 4. YUI:顯示在樹狀
- 5. 形狀風格
- 6. 默認顯示風格
- 7. JQuery的風格顯示值
- 8. 以ASCII格式顯示樹
- 9. 風格ActionSheet的UIAlertController顯示如下狀態欄
- 10. 從樹狀結構中的表格中顯示類別
- 11. jqgrid樹狀網格顯示用戶自定義圖標
- 12. 以樹狀結構顯示數據
- 13. 將字典顯示爲樹狀圖嗎?
- 14. 如何顯示樹狀結構angular2
- 15. 在rails上顯示樹狀結構
- 16. 在樹狀視圖中顯示html odoo
- 17. 繃格顯示狀態
- 18. 顯示:塊殺死我的風格
- 19. 奇怪顯示的孩子的風格
- 20. 顯示/隱藏元素破壞風格
- 21. phpBB3風格 - 圖像不顯示
- 22. Angularjs不適用於顯示無風格
- 23. 熊貓風格不顯示列名
- 24. 顯示和隱藏div Android風格
- 25. 的Javascript風格顯示不工作
- 26. 按鈕形狀風格
- 27. 顯示樹/圖
- 28. ASP.Net VB - 顯示數據手風琴風格
- 29. 如何獲得風格榆樹
- 30. 穿過樹 - 嚮導風格(asp.net mvc)
那你試試,爲什麼它不工作? – dasblinkenlight 2012-04-21 11:03:14