我的方法是判断webbrowser的readytstate是否为Complete,代码:
while (true)
{
if (webBrowser1.ReadyState == WebBrowserReadyState.Complete)
{ break; }
}
但是单线程程序加载网页就不能执行循环,执行循环就不能加载网页,所以程序就一直死在while循环上,用进程暂停就停掉了整个进程,王爷爷不加载了。现在相求一个解决办法
现在的网页,使用ajax的方式加载,也就是说WebBrowserReadyState.Complete后,其实网页还在加载,不能这么判断,应该判断网页中特定的元素是否存在。
很简单,用多线程即可。
最简单做法,你用一个Timer控件,在Timer的循环里写:
if (webBrowser1.ReadyState == WebBrowserReadyState.Complete)
{
timer1.enabled=false;
//其他处理
}
不太知道你要做什么,如果是等加载完网页再做一些事的话,这么做毫无意义。对应的Html页面的JS里写也页面加载后的事件也是完全可以的。