C# btn.InvokeMember(”单击“)或btn.RaiseEvents(”单击“),以及其他赢得的任何东西';t单击';OK';网络浏览器上的btn
尝试了堆栈上发布的所有内容,甚至是C# btn.InvokeMember(”单击“)或btn.RaiseEvents(”单击“),以及其他赢得的任何东西';t单击';OK';网络浏览器上的btn,c#,webbrowser-control,C#,Webbrowser Control,尝试了堆栈上发布的所有内容,甚至是mshtml.IHTMLElement nativeElement=elasmshtml.IHTMLElement nativeElement.click()无效 下面的代码是标准代码,适用于我在WebBrowser控件中单击其他按钮 HtmlElementCollection pageTextElements = doc.Window.Document.GetElementsByTagName("input"); HtmlElement btnOK = nul
mshtml.IHTMLElement nativeElement=el
asmshtml.IHTMLElement代码>
nativeElement.click()
无效
下面的代码是标准代码,适用于我在WebBrowser
控件中单击其他按钮
HtmlElementCollection pageTextElements = doc.Window.Document.GetElementsByTagName("input");
HtmlElement btnOK = null;
foreach (HtmlElement element in pageTextElements)
{
if (element.Id == "btnOK")
{
btnOK = element;
}
}
btnOK.InvokeMember("click");
//这是我尝试单击的按钮:
<input id="btnOK" class="btn12" type="submit" value="OK" title="" tabindex="11" style="position: absolute; left: 584px; height: 21px; width: 63px; …pointer; top: 1074px; padding-left: 0px; padding-right: 0px;" onfocus="saveFocusedControl("btnOK");" name="btn_btnOK" alt="OK" accesskey="O"></input>
执行btnOK.InvokeMember(“单击”)操作时出现任何错误消息
?手动单击时会发生什么?没有错误,只是什么都不做。我已经在应用程序的其他地方使用了此代码,它工作正常。将WebBrowser.ScriptErrorsSuppressed
设置为false
,然后执行。有DocumentCompleted
事件用于此,您应该使用它而不是轮询ReadyState
。完整示例:。
if (webBrowser1.ReadyState == System.Windows.Forms.WebBrowserReadyState.Complete)
{
System.Threading.Thread.Sleep(100);
System.Windows.Forms.Application.DoEvents();
btnOK.InvokeMember("click"); //Go back to Select Date for TimeSheet...Original Url...
}