c# - 如何使用控件的类名或其值而不是 ID 来调用 HTML 按钮的单击函数?

标签 c# html wpf class webbrowser-control

我正在创建一个 WPF 应用程序,该应用程序打开 WebBrowser 实例并获取 HTML 代码... 例如,我通过 ID 调用元素:

如果 HTML 是:

<input type="text" name="company" id="company" value=""/>

向该元素添加值的 C# 代码为:

wb.Document.GetElementById("company").SetAttribute("value", String.Format("{0}", Company));

其中 wb 是 WebBrowser 类的实例

或者如果我有一个按钮并且需要单击 Click 事件:

<input type="submit" id="button1" />

C# 代码将是:

wb.Document.GetElementById("button1").InvokeMember("click");

现在我有一个问题是我需要调用一个没有ID但只有类名和值的按钮的点击函数 就像下面这个:

<input class="submit" type="submit" value="register"/>

我该怎么做?

最佳答案

您必须使用 GetElementByTagName("INPUT"),然后通过其 GetAttribute("class") 方法找到要调用的 HtmlElement 点击事件。

var elems = wb.Document.GetElementByTagName("INPUT");

foreach(HtmlElement elem in elems){
    if(elem.GetAttribute("class") == "submit"){
        elem.InvokeMember("click");
    }
}

关于c# - 如何使用控件的类名或其值而不是 ID 来调用 HTML 按钮的单击函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12254956/

相关文章:

html - 我的标签页菜单退出页面宽度

c# - 使用 MahApps 保持样式扩展 WPF 中的 TextBox

wpf - WPF 中的双向绑定(bind)

wpf - 根据 Bool 成员对象填充 ListBoxItem 背景

c# - 错误 : 'keyCode' is null or not an object

c# - asp mvc 如何将多选值传递给 Controller

javascript - 使用两个 CSS 文件的深色/浅色模式

javascript - 菜单图标的 css 中的边距顶部不适用于特定的 px

c# - 使用 winforms 、 mdi 、父子窗体,在父窗体下指定空间打开子窗体

c# - 3TB TXT 文件中的重复字符串