我在C#Windows窗体应用环境中使用GeckoWebbrowser控件。
我想通过后面的代码事件在浏览器页面上的按钮上调用click事件。
当我尝试访问特定按钮时,我可以通过使用GetElementById命令找到它,但是在将此信息分配给GeckoInputElement以调用click事件之后,可以看到一个空引用异常。
我的代码调用获取元素如下所示:
GeckoInputElement betbt = new GeckoInputElement(wBrowser.Document.GetElementById("bet-bt").DomObject);
如果我像这样分配它,我可以访问该元素,但仍然无法使用GeckoElement对象单击它:
GeckoElement g1 = (GeckoElement)wBrowser.Document.GetElementById("bet-bt");
按钮的HTML如下所示:
<button data-action="bet" id="bet-bt" class="action">Bet</button>
答案 0 :(得分:0)
GeckoInputElement用于Html输入元素。
只需使用GeckoHtmlElement:
GeckoHtmlElement g1 = (GeckoHtmlElement)wBrowser.Document.GetElementById("bet-bt");
存在GeckoElement和GeckoHtmlElement以区分浏览器何时显示非HTML。 对于Html文档,请始终使用GeckoHtmlElement。