foreach (ForwardNeEntry enEntry in forwardNeEntry)
                    {
                        TreeListNode tnChild = 
               this.treeListNe.AppendNode(new object[]     {false, enEntry.ToString() }, tn);
                        tnChild.Tag = enEntry;
                    }
 现在我的forwardNeEntry里面有3000多条数据,加载的时候非常慢,要用时2分钟,我想用多线程加载!这样界面不至于死到那,我是新手,刚工作3个月,对线程不熟悉,请各位大侠给写一个例子,非常感谢!!!再次感谢!!!!

解决方案 »

  1.   

    3000多条数据单线程也不可能需要2分钟加载吧,这类大的的加载最好加个PROGRESSBAR, 防止假死机现象
      

  2.   

    new Thread(new ThreadStart(LoadFunction));....................
    public void LoadFunction()
    {
       ........
    }
      

  3.   

    这个可以用ajax异步加载...
    不过3000多条记录都展现出来,那让用户怎么看啊?建议分批次显示。
      

  4.   

    使用thread的时候可能也会影响介面显示,
    使用thread的时候最好也lock一下
      

  5.   

    using System.Threading//引入命名空间;
     private void Form1_Load(object sender, EventArgs e)
            {          
              Thread td=new Thread(New ThreadStart(Load))
              td.Start();
               
            }
    public void Load()
    {
    //你的功能实现
    foreach (ForwardNeEntry enEntry in forwardNeEntry) 
                        { 
                            TreeListNode tnChild = 
                  this.treeListNe.AppendNode(new object[]    {false, enEntry.ToString() }, tn); 
                            tnChild.Tag = enEntry; 
                        } }
      

  6.   

    1.一次load 3000个节点是否合理?
    2.真正耗时的代码是这几句吗?