首页 新闻 搜索 专区 学院

c#高手进...

0
悬赏园豆:5 [已关闭问题] 关闭于 2013-01-16 00:19

在.net 中。怎样求ThreeView某个节点的深度,,怎样用算法实现..

彬彬@科比的主页 彬彬@科比 | 初学一级 | 园豆:43
提问于:2013-01-07 23:48
< >
分享
所有回答(5)
0

ThreeView 这个自己就有这个属性吧

Tom.汤 | 园豆:2258 (老鸟四级) | 2013-01-08 08:31
0

自带属性level,或者用递归自己遍历也容易

茂茂 | 园豆:2860 (老鸟四级) | 2013-01-08 08:49
0
protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)
        {
            int i = 0;
            TreeNode selectedNode = this.TreeView1.SelectedNode;
            while (true)
            {
                if (selectedNode.Parent != null)
                {
                    i++;
                    selectedNode = selectedNode.Parent;
                }
                else
                {
                    break;
                }
            }
            Response.Write(i);
        }
chenping2008 | 园豆:9836 (大侠五级) | 2013-01-08 09:49

是求下面有多少层。不是向上的。是向下..

支持(0) 反对(0) 彬彬@科比 | 园豆:43 (初学一级) | 2013-01-08 10:36

@彬彬@科比: 子节点中最深的?

如果是:

试试这个:

protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)
        {
            int max = 0,tempMax=0;
            TreeNode selectedNode = this.TreeView1.SelectedNode;
            FindMaxDeepNum(selectedNode, ref max,tempMax);
            Response.Write(max);
        }
private void FindMaxDeepNum(TreeNode node, ref int max, int temp)
        {
            if (node.ChildNodes.Count > 0)
            
            {
                foreach (TreeNode n in node.ChildNodes)
                {
                    temp++;
                    if (temp > max)
                    {
                        max = temp;
                    }
                    if (n.ChildNodes.Count > 0)
                    {
                        FindMaxDeepNum(n, ref max,temp);
                    }
                    temp--;
                }                
            }
        }

 

支持(0) 反对(0) chenping2008 | 园豆:9836 (大侠五级) | 2013-01-08 10:48

@chenping2008:就是要层数。。。(以它为父节点。总共有多少层的意思) 

支持(0) 反对(0) 彬彬@科比 | 园豆:43 (初学一级) | 2013-01-08 21:53
0

vs自带的有这个属性吧?要不你自己写一个遍历一下

妍珊 | 园豆:1169 (小虾三级) | 2013-01-08 10:33
0

递归 遍历

只会造轮子 | 园豆:2274 (老鸟四级) | 2013-01-08 11:18

遍历个来看看

支持(0) 反对(0) 彬彬@科比 | 园豆:43 (初学一级) | 2013-01-11 22:22
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册