2

WebBrowser インスタンスを開いて HTML コードを取得する WPF アプリケーションを作成しています。たとえば、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"/>

これどうやってするの?

4

1 に答える 1

2

イベントを呼び出すには、メソッドを使用してGetElementByTagName("INPUT")検索する必要があります。HtmlElementGetAttribute("class")click

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

foreach(HtmlElement elem in elems){
    if(elem.GetAttribute("class") == "submit"){
        elem.InvokeMember("click");
    }
}
于 2012-09-03T23:33:19.467 に答える