treeview中刷新之后选中节点不变

实现方法:
1.获取刷新前的tag啊,或者text啊 ,key啊,都行,然后刷新后递归循环每一个节点,发现匹配,果断break。最后直接复制给treeview1.selectedNode.

2.利用treeview1.selectedNode.fullPath.代码如下:
        //刷新控件treeview
        private void UpdateTreeView()
        {
            string path = string.Empty;
            if (treeView1.SelectedNode != null)
            {
                path = treeView1.SelectedNode.FullPath;
            }

            treeView1.Nodes.Clear();
            LoadTreeView();

            if (path != "")
            {
                string delimit = treeView1.PathSeparator;
                string[] kids = path.Split(new string[] { delimit }, StringSplitOptions.RemoveEmptyEntries);

                TreeNode tn = treeView1.Nodes[kids[0]];
                //treeView1 .Nodes.
                for (int i = 1; i < kids.Length; i++)//注意treeview树load数据的时候需要添加key。此时有几层循环几次,效率高,不用递归。
                {
                    tn = tn.Nodes[kids[i]];
                }
                treeView1.SelectedNode = tn;
            }
        }
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值