我使用這個代碼從另一個網站:如何獲取treeView中的節點級別?
How can I model this class in a database?
我在每個目標記錄的字段命名爲「排名」。它告訴我什麼位置。例如:
Objective "Geometry": Rank1
|_Objective "Squares": Rank1
|_Objective "Circles": Rank2
|_Objective "Triangle": Rank3
|_Objective "Types": Rank1
Objectve "Algebra": Rank2
Objective "Trigonometry": Rank3
該等級告訴我節點的順序。但我想獲得所有的排名:對於第三個位置將是:
Objective "Geometry": Rank1
|_Objective "Squares": Rank1 -> 1.1
|_Objective "Circles": Rank2
|_Objective "Triangle": Rank3
|_Objective "Types": Rank1 -> 1.3.1
Objectve "Algebra": Rank2
Objective "Trigonometry": Rank3 -> 3
我正在使用LINQ to SQL。我怎樣才能做到這一點?
<TreeView Name="treeView1">
<TreeView.ItemTemplate>
<HierarchicalDataTemplate DataType="{x:Type data:Objective}" ItemsSource="{Binding Path=Objectives}" >
<TextBlock Text="{Binding Name}" />
</HierarchicalDataTemplate>
</TreeView.ItemTemplate>
</TreeView>
我建議你通過某種遞歸方法在模型中(而不是在視圖/ GUI中)解決這個問題。 –
有關設置級別的遞歸函數的示例,請參閱:http://stackoverflow.com/questions/6225123/simulating-cte-recursion-in-c – woggles