日期:2014-05-17  浏览次数:20867 次

WebBrowser的DocumentCompleted事件多次被调用,怎么判断页面加载完毕。
比如WebBrowser打开http://www.abc.com/index.htm页面时,同时访问了下面的url,怎么判断页面加载所有url完毕。


http://www.abc.com/index.htm
http://m.abc.com/123.htm
。。。。


------解决方案--------------------
通过webBrowser的IsBusy属性判断
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            if (!webBrowser1.IsBusy)
                Console.WriteLine("加载完毕!");
            else
                Console.WriteLine("加载中...");
        }

------解决方案--------------------
 哦,想起来了,这个事件只触发一次,我以前遇到过,后来用循环等待解决的
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            while(webBrowser1.IsBusy)
            {
                Console.WriteLine("加载中...");
                Application.DoEvents();
                System.Threading.Thread.Sleep(10);
            }

            Console.WriteLine("加载完毕!");                
        }

------解决方案--------------------
引用:
哦,想起来了,这个事件只触发一次,我以前遇到过,后来用循环等待解决的
C# code?1234567891011private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)        {            while(webBr……



楼上代码很赞
------解决方案--------------------
比如说一个页面,有js定时器,设置为每秒刷新1次,那么你说的文档加载完是什么时候?