我有一個樹視圖控件,它包含單個父節點以及來自該父級的多個子節點。有沒有辦法從父主體獲取所有子節點的數組或列表?即從treeview.nodes [0]或第一個父節點獲取所有節點。在Visual C中列出樹視圖控件中父節點的所有子節點#
7
A
回答
6
您可以遞歸添加到列表中是這樣的:
public void AddChildren(List<TreeNode> Nodes, TreeNode Node)
{
foreach (TreeNode thisNode in Node.Nodes)
{
Nodes.Add(thisNode);
AddChildren(Nodes, thisNode);
}
}
然後調用根節點這個例程傳:
List<TreeNode> Nodes = new List<TreeNode>();
AddChildren(Nodes, treeView1.Nodes[0]);
-2
你可以做這樣的事情。要得到樹視圖中的所有節點..
private void PrintRecursive(TreeNode treeNode)
{
// Print the node.
System.Diagnostics.Debug.WriteLine(treeNode.Text);
MessageBox.Show(treeNode.Text);
// Print each node recursively.
foreach (TreeNode tn in treeNode.Nodes)
{
PrintRecursive(tn);
}
}
// Call the procedure using the TreeView.
private void CallRecursive(TreeView treeView)
{
// Print each node recursively.
TreeNodeCollection nodes = treeView.Nodes;
foreach (TreeNode n in nodes)
{
PrintRecursive(n);
}
}
你會請採取alook這個鏈接。
9
public IEnumerable<TreeNode> GetChildren(TreeNode Parent)
{
return Parent.Nodes.Cast<TreeNode>().Concat(
Parent.Nodes.Cast<TreeNode>().SelectMany(GetChildren));
}
相關問題
- 1. 父節點檢查時自動檢查樹視圖控件中的子節點
- 2. C++將已刪除節點的子節點移到樹中的父節點
- 3. 在C#treeview中展開特定節點的所有父節點
- 4. 窗體樹形視圖中的父節點選擇和子節點選擇
- 5. 在jstree中選擇子節點時檢查所有父節點
- 6. 如何找出父節點的所有嵌套子節點?
- 7. 如何獲取PowerShell中的子節點的所有父節點
- 8. c#樹型視圖,當選擇他父節點時選擇子節點
- 9. 在樹視圖中的子節點中的重複值c#
- 10. 如何在劍道樹視圖上展開選定子節點的父節點
- 11. 試圖找到二進制樹中的節點的父節點
- 12. 從Python樹中提取父節點和子節點
- 13. 在c#winforms中填充樹視圖後排序樹視圖的子節點
- 14. Telerik的MVC - 樹視圖 - 子節點
- 15. 父節點包含所有子節點數據的總和
- 16. 如何在二叉樹中找到節點的父節點?
- 17. ASP.NET:在TreeView控件中顯示葉節點作爲父節點
- 18. 樹視圖中的不可選節點
- 19. 如果沒有子節點,在TreeView中隱藏父節點
- 20. 使用d3樹形圖上去繼續點擊父節點上的子節點
- 21. 從父節點獲取所有子節點neo4j
- 22. 展開樹視圖中的所有節點
- 23. 樹視圖節點重選
- 24. XML中的所有子節點都鏈接到一個父節點
- 25. PHP計算樹中的所有節點
- 26. 展開dijit中的所有節點。樹
- 27. 如何從所選節點的所有子節點中jstree
- 28. 禁用樹視圖節點
- 29. 樹視圖節點禁用
- 30. Drupal。如何在父節點視圖中顯示引用節點的列表?
感謝你爲這個代碼!我不得不改變foreach,使其工作,雖然,像這樣:foreach(TreeNode thisNode在Node.ChildNodes)< - Node.ChildNodes而不是Node.Nodes –
@Svein這是因爲你使用的是WPF,但是這個代碼是用於WinForms 。 WinForms中沒有ChildNodes。 –
啊,好吧,我的壞!但是,無論如何感謝:) –