How do I submit a form inside a WebBrowser control

2019-01-17 11:52发布

问题:

How can I create a program with C# to submit the form(in the web browser CONTROL in windows Apps)automaticlly ?

回答1:

The WebBrowser control has a Document property, which returns an HtmlDocument. The HtmlDocument has several members you can use to traverse and manipulate the DOM.

Once you've used these methods to find the form, you can use InvokeMember to call the form's submit method.

If you know the page has a single form:

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

If you know the ID of the form you would like to submit:

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


回答2:

If you know the page has a single form or you want the first form:

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


回答3:

WebBrowser.Document.GetElementById("form_submit").InvokeMember("click");