我正在使用以下代码。我想导航到一个网页,然后单击C#Web浏览器控件中的一个按钮。但是,即使在我可以导航到网页之前,也会调用click,从而导致null异常。
webBrowser1.Navigate("www.remaxit.com/members"); // way before this
deleted = true;
HtmlDocument doc = this.webBrowser1.Document;
doc.GetElementById("AddUser").InvokeMember("CLICK"); //This executes
任何帮助都将不胜感激。
答案 0 :(得分:11)
第一行执行,但是在运行其余代码之前它没有完成加载页面。
做更多的事情:
webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(webBrowser1_DocumentCompleted);
void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
HtmlDocument doc = this.webBrowser1.Document;
doc.GetElementById("AddUser").InvokeMember("CLICK");
}
一旦页面加载完毕,这将触发您的代码。