【发布时间】:2014-03-09 15:42:27
【问题描述】:
我正在使用WebBrowser 控件,有一个名为DocumentCompleted 的事件,该事件会为网页中的每个框架以及所有子文档(例如JS 和CSS)触发加载。
我的问题是如何检测该事件的最后一个条目,我的意思是如何检测页面何时完全加载,并且该事件不再触发。
我找了很多,我找到了这样的解决方案:
void webBrowser1_DocumentCompleted(object sender,
WebBrowserDocumentCompletedEventArgs e)
{
if (e.Url.Equals(webBrowser1.Url)) {
// Here the page is fully loaded
}
}
但这不适用于所有网址!
有人知道如何实现吗?
提前感谢
【问题讨论】:
-
鉴于在页面加载后通过 Javascript 进行额外服务器查询的网站数量众多,因此很难做到这一点。
-
您可以在第一次点击 DocumentCompleted 后取消绑定事件,以确保它只触发一次。然后在调用 webBrowser1.Navigate(url);之前重新绑定;
标签: c# webbrowser-control