我正在webbrowser控件中加载页面。我怎样才能检查它什么时候完成?我知道DocumentCompleted,但是一个页面可能会调用它5次或更多次。我如何检查它何时完成?
答案 0 :(得分:2)
ReadyState属性有帮助吗?
还有一个布尔属性Busy。我想,这也应该有所帮助。
答案 1 :(得分:1)
为主文档以及该文档中的每个帧调用DocumentCompleted处理程序。通话次数取决于您打开的特定网页。
使用ReadyState属性作为shahkalpesh建议听起来合理,虽然我知道另一种方法可行。假设你的事件处理程序有这个签名:
void OnDocumentComplete( object pDisp, ref object url )
并且您有对主文档的引用,然后您可以检查
pDisp == mainDoc
查看呼叫是否来自主文档。根据我的经验,您还应该将pDisp转换为IWebBrowser2,然后将其Document属性转换为IHTMLDocument2,然后检查其body属性是否为null。如果是这样,那么文档已经完全加载。