C#WebBrowser HtmleElement.InvokeMember(";单击";)不在<;表格>;标签

C#WebBrowser HtmleElement.InvokeMember(";单击";)不在<;表格>;标签,c#,html,webbrowser-control,C#,Html,Webbrowser Control,我正在编写一个C#form应用程序,它通过点击WebBrowser中的按钮、链接、表单等来自动化一些用户行为。一切都很好,我使用InvokeMember(“单击”)在几个按钮和链接上没有问题,但现在我只能单击一次 我已经挣扎了好几天了,我尝试了一些技巧,但都没有奏效。表单的HTML代码基本上如下所示: <form name="shipsChosen" id="shipsChosen" method="post" action="http://www.example.com/index.ph

我正在编写一个C#form应用程序,它通过点击WebBrowser中的按钮、链接、表单等来自动化一些用户行为。一切都很好,我使用InvokeMember(“单击”)在几个按钮和链接上没有问题,但现在我只能单击一次

我已经挣扎了好几天了,我尝试了一些技巧,但都没有奏效。表单的HTML代码基本上如下所示:

<form name="shipsChosen" id="shipsChosen" method="post" action="http://www.example.com/index.php?page=2">

<li class="off" id="button1">
            <div class="buildingimg"><a  href="javascript:void(0);"></a></div>
            <input id="ship_1"/>
</li>

<li class="off" id="button2">
            <div class="buildingimg"><a  href="javascript:void(0);"></a></div>
            <input id="ship_2"/>
</li>

<li class="off" id="button3">
            <div class="buildingimg"><a  href="javascript:void(0);"></a></div>
            <input id="ship_3"/>
</li>

</form>

<a  href="javascript:void(0);" onClick='setMaxIntInput();' id="sendall"></a>
<a id="continue" class="off" href="" onClick="trySubmit(); return false;"><span>Submit</span></a>
我也尝试在输入字段中输入一些值,但这也不起作用:

HtmlElement Input= webBrowser1.Document.GetElementById("ship_202");
Input.Focus();
Input.InnerText = "ship_1";
这对我来说非常有趣,因为尽管在我的C#form应用程序中没有与WebBrowser进行任何用户交互的情况下运行该应用程序是不起作用的,但是如果我在WebBrowser中单击一次,并运行上面的单击代码,它就起作用了。但这不是自动化,对吗

有人经历过类似的问题吗?我发现的唯一区别是工作点击和HTML中的点击

更多: 我正在为WebBrowser使用Internet Explorer 11功能浏览器模拟。
页面已完全加载。

尝试让应用程序暂停,然后再调用单击操作,因为页面可能仍在忙于一些早期进程。 您可以使用计时器控件来实现此效果。

请检查:
HtmlElement Input= webBrowser1.Document.GetElementById("ship_202");
Input.Focus();
Input.InnerText = "ship_1";