0

我正在尝试使用 c# webbrowser 控件来查看 twitter 的移动版本。我的 Windows 窗体中有一个按钮,用于让我退出该站点,但我无法让它工作。

这是直接的html代码:

span class="w-button-common w-button"> input name="commit" type="submit" value="Sign out" /

我努力了:

webBrowser1.Document.Forms[0].InvokeMember("submit");

但是页面上有几个带有 type="submit" 的按钮。

我如何让它点击正确的?

如果您希望我提供页面的完整来源,请询问:)

4

2 回答 2

0

过去,我使用 WebBrowser 控件通过 javascript 调用直接与 DOM 交互,如下所示:

browser.Navigate(string.Format(@"javascript:void({0})", jsAction));

当然我知道你已经用 InvokeMemeber() 做过类似的事情,但是由于我对 WebBrowser 界面没有进一步的经验,所以我只能谈谈我之前所说的。使用 javascript,我可以实现真实用户可以实现的任何结果。使用我描述的方法,您可以尝试在 javascript 上下文中枚举您尝试处理的控件,然后调用该.click函数。

于 2012-07-27T17:34:33.687 回答
0

嗯,用正常的点击方法试试吧。

获取一个 HtmlElementCollection

HtmlElementCollection collection = webBrowser1.Document.getElementsByTagName("select");

在调试模式下查看它,直到您知道哪个是您的按钮。

比执行点击:

collection[x(whereever your button is)].InvokeMember("click"); 
于 2017-02-06T08:25:54.027 回答