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

问题描述 投票:16回答:3

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

c# .net winforms webbrowser-control
3个回答
30
投票

WebBrowser control有一个Document property,返回HtmlDocument。 HtmlDocument有several members,你可以用来遍历和操纵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");

0
投票

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

HTMLDocument doc = webBrowser.Document as HTMLDocument;    
HTMLFormElement form = doc.all.OfType<HTMLFormElement>().First();
form.submit();

0
投票
WebBrowser.Document.GetElementById("form_submit").InvokeMember("click");
© www.soinside.com 2019 - 2024. All rights reserved.