HtmlElement.InvokeMember,如何等到页面加载?

时间:2013-07-03 13:56:53

标签: c# html asp.net browser webbrowser-control

在我的C#应用​​程序中,我使用WebBrowser对象来读取html包含的回发。要通过获取页​​面来读取默认页面,我使用WebBrowserDocumentCompletedEventHandler,如:

WebBrowser wb = new WebBrowser();
wb.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(wb_DocumentCompleted);
wb.Navigate("http://mysite.com");

然后在那个事件中我有一个页面:

private void wb_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
    IsDocumentComplete = true;
    // here I can read the page
}

所以,每次调用Navigate方法时都会触发该事件,但是当我在页面上获得一些元素时,调用回发,我需要再次等待,直到再次加载页面为止:

button.InvokeMember("onclick");

在这种情况下,wb_DocumentCompleted不会触发。

了解页面何时完全加载的方法是什么。

感谢任何帮助。谢谢!

1 个答案:

答案 0 :(得分:1)

检查这些链接,我认为这些链接可以帮助您

第一个链接: how to determine when page is loaded completely in webbrowser control in csharp?

第二个链接:

How to know that WebBrowser control has finished loading all content including flash?

这两个链接都与您的问题有关,请检查一下,这些链接将回答您的问题