//调用 wbLogin.Navigate();
private void wbLogin_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
            Thread.Sleep(2000);
            
            业务代码
            
            Thread.Sleep(2000);
             
}
我想让这个网址加载完之后,,处理的慢一点。。该怎么写。如果用Thread.Sleep(2000)这样主窗体就卡住了。

解决方案 »

  1.   

    wbLogin_DocumentCompleted把这个事件在另一个线程里执行就可以了。这样你让线程过一段再执行,主窗体就不会卡住了。
      

  2.   

    private void wbLogin_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
    {
      //Thread.Sleep(2000);换成下面这样。。这样还是不行。。
      
      Thread threadSleep2 = new Thread(new ThreadStart(sleep));
      threadSleep2.Start();
      threadSleep2.Join();
     }
    //搜索线程函数
     private void sleep()
     {
         DateTime dtm = DateTime.Now;
         while (DateTime.Now.Subtract(dtm).TotalSeconds < 3) //停顿3秒
          {     }
    }
      

  3.   

    你直接把你的webbroswer都放到一个单独线程中 navigate也在这个线程中调用就可以了 哪有直接把那个完成的事件放到一个单独线程的!!!