我想实现新增数据后,treeview刷新并展开指定节点,现在刷新时没有问题,但如何展开指定节点呢?(就是展开新增节点的上级节点)

解决方案 »

  1.   

    TreeNode tn = new TreeNode(); //这里是新增的节点
    tn.Parent.Expand(); //展开一级
    tn.Parent.ExpandAll(); //全部展开
      

  2.   

    新增的节点是怎么得到的呢?我如何判断哪个节点是我新增的?foreach (TreeNode node in this.tvorg.Nodes)
                {
                    if (node.Text == "西区")
                    {
                        this.tvorg.SelectedNode = node;
                        this.tvorg.SelectedNode.Parent.Expand();
                    }
                }假定新增的节点是“西区”,我这样写不对啊
      

  3.   

    你这样是等于整个treeview刷新了一次。
    把你添加记录更新数据时选中的节点保存下来。然后更新后去选择这个节点。
      

  4.   

    OK,有这个节点了,然后我告诉你。
    因为treeview的节点关系是层叠的,也就是说。
    treeView.nodes这个集合里包含的是根节点。
    treeView.nodes[i].nodes这个集合下包含的是第i个根节点下的第一层子节点集合。
    依次类推
    OK,那么,你添加的节点该怎么找。知道了吧