TreeView添加节点应该使用Node.Add() 还是 Node.AddRange()

给树加5000个节点,有两种方法,不知道那种性能更高。
  第一种 是单个单个的Add.
          TreeView treeView = new TreeView();

            for (int i = 0; i < 5000;i++ )
            {
                TreeNode node = new TreeNode(i.ToString());
                treeView.Nodes.Add(node);
            }

第二种 是 Add 一个节点集合
     
            TreeView treeView = new TreeView();

            TreeNode[] nodes = new TreeNode[5000];
             for (int i = 0; i < 5000;i++ )
            {
                TreeNode node = new TreeNode(i.ToString());
                nodes[i] =  node;
            }
            treeView .Nodes.AddRange(nodes);
            

少量数据的话就可以不考虑,但是如果数据超过万,那该如何取舍。。

类似的问题 也存在ListBox,ListView == 一系列控件
哪位高手能帮我解开谜团


喵喵时光机
浏览 1143回答 2
2回答

拉丁的传说

ls都回答了,&nbsp;异步加载可以参考我整理的一篇文章C# WinForm开发系列 - TreeView

牛魔王的故事

选择第二种,最起码不会像第一种要对UI上控件做5000次操作,第二种数据在内存里。但建议你万条数据操作不要用TreeView 。即使加载数据很快也影响软件的易用性。
打开App,查看更多内容
随时随地看视频慕课网APP