2013-07-23 33 views
0

我有一個字符串在C#中的列表:C#轉換列表融科

List<string> { "A", "B", "C", "D" }; 

這些字符串是產品類別的「冠軍」。

我需要將它們轉換成節點的這樣的一個分支:

A > B > C > D 

在列表中的項目的順序決定在分支自己的立場,即。 A是根,D是葉節點。

我的對象叫做WebBrowseNode,它具有以下特性:

  • string Titlestring
  • List<WebBrowseNode> Children

我一直在爲這至少一個小時,現在並不能找到一個適當的算法來做到這一點。

+0

一條線索:從頭開始。 –

回答

2

這個想法是從你的列表結束開始。

WebBrowseNode lastNode = null; 
for (int numItem = list.Count - 1; numItem >= 0; numItem--) // Go from the end to the beginning of the list 
{ 
    string title = myStringList[numItem]; 

    lastNode = new WebBrowseNode 
    { 
     Title = title, 
     Children = { lastNode }        // Adds lastNode to the Children list 
    }; 
} 

WebBrowseNode root = lastNode; 
+0

感謝您的回覆和快速回復。讓我試試看。 –

+0

這很棒,它運行良好,謝謝! –