比如我在TreeView中选中了某个TreeNode,怎么返回该Node的深度?

解决方案 »

  1.   

    int i = 0;
    TreeNode temp = node.Parent;
    while(temp != null)
    {
        i++;
        temp = temp.Parent;
    }
      

  2.   

    没有简单的方法,
    一种是想上面一样自己去计算;
    另一种是添加的时候,把当前节点的深度存到Tag,以后可以用Tag来访问。
      

  3.   

    就一个节点的话,那深度应该是1,所以应该是:
    int i = 1;
    TreeNode temp = node.Parent;
    while(temp != null)
    {
        i++;
        temp = temp.Parent;
    }
      

  4.   

    private int GetNodeDepth( TreeNode node )
            {
                if ( node.Parent == null ) return 1;
                else return GetNodeDepth(node.Parent) + 1;
            }