如何在TreeView中选择某个子节点,C#

Cas*_*lav 9 c# treeview traversal

我在选择某个子节点时遇到问题.

我想要实现的目标:例如,我有这个树视图(一个父节点有两个子节点):

-Child值为5
-Child值为2.

我想添加这两个值并将它们分配给父节点:

父结果7
-Child 5
-Child 2.

当然,更大的树视图会有几个父母和很多孩子,他们都会加起来一个根节点.

我怎样才能做到这一点??请帮助.

谢谢,
卡斯拉夫

小智 0

不知道这是否符合您的请求,但这将添加所有子节点 > 父节点

    private void button2_Click(object sender, EventArgs e)
    {
        int grandTotal = CalculateNodes(this.treeView1.Nodes);
    }
    private int CalculateNodes(TreeNodeCollection nodes)
    {
        int grandTotal = 0;
        foreach (TreeNode node in nodes)
        {
            if (node.Nodes.Count > 0)
            {
                int childTotal = CalculateNodes(node.Nodes);
                node.Text = childTotal.ToString();
                grandTotal += childTotal;
            }
            else
            {
                grandTotal += Convert.ToInt32(node.Text);
            }
        }
        return grandTotal;
    }
Run Code Online (Sandbox Code Playgroud)

你应该做一些错误检查等以使其可靠