如何在WebBrowser控件中提交表单?

如何使用C#创建程序以自动提交表单(在Windows应用程序中的Web浏览器中)?

WebBrowser控件具有Document属性 ,该属性返回HtmlDocument 。 HtmlDocument有几个成员可以用来遍历和操作DOM。

一旦使用这些方法查找表单,就可以使用InvokeMember来调用表单的提交方法。

如果您知道该页面有一个表单:

foreach (HtmlElement form in webBrowser1.Document.Forms) form.InvokeMember("submit"); 

如果您知道要提交的表单的ID:

 HtmlElement form = webBrowser1.Document.GetElementById("FormID"); if (form != null) form.InvokeMember("submit"); 

如果您知道该页面有一个表单,或者您想要第一个表单:

 HTMLDocument doc = webBrowser.Document as HTMLDocument; HTMLFormElement form = doc.all.OfType().First(); form.submit(); 
 WebBrowser.Document.GetElementById("form_submit").InvokeMember("click");