winform treeview用多线程加载节点,怎么实现?高手指教。SharePoint中Farm一下逐层站开的节点会很多,可能操作打开一个节点的时候要加载很长时间,如果不用多线程的话,就不能再操作其它没有展开的节点。我实现了异步加载,点击一个节点,添加下面的子节点。但是现在想改为多线程加载。求高手们指教,最好把方法和简单的代码例子告诉我。开发环境是VS2008 C#语言。

解决方案 »

  1.   

    private void TheadWork()
            {
                while (true)
                {
                    Thread.Sleep(1000);
                    DelegetAddNode addNode = new DelegetAddNode(this.AddNodeFunction);
                    this.Invoke(addNode);
                }
            }        private delegate void DelegetAddNode();
         
            public void AddNodeFunction()
            {
               
                this.treeView1.Nodes.Add(DateTime.Now.ToString());
            }用委托的方法Invoke
      

  2.   

    LZ我建议你不用多线程,为什么呢?
    越多的线程来操作界面,效率越不会高其实LZ用递归+循环实现你这个就可以了