- ベストアンサー
C#2005 Webbrowserコントロール での自動チェックボックス
Visual C# 2005 で、 Webbrowser コントロールでの自動処理を試みているのですが、 チェックボックスに自動チェックを入れたいのですが、 やり方分かる方、ご教示いただけませんでしょうか。 <input type="checkbox" name="example" value="サンプル">サンプル
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
MSDNなどで何が取得出来ているのかを確認しましょう Docuemnt.All.GetElemendtsByNames("example")[0] で取得出来るのはHtmlElementクラスのオブジェクトです これは HTML内のタグの共通部分を取り扱えるだけのクラスのように思います checkedなど 特定のタグ固有の部分はサポートしていないのではないでしょうか 『Microsoft HTML Object Library』を参照設定に追加して mshtml.HTMLInputElement objInp; objInp = (mshtml.HTMLInputElement)Docuemnt.All.GetElemendtsByNames("example")[0].Domelement; objInp.@checked = true; といった具合で出来ますよ
その他の回答 (2)
- himajin100000
- ベストアンサー率54% (1660/3060)
あることはある。 http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-6043025 http://msdn2.microsoft.com/en-us/library/aa703817(VS.85).aspx > checked んで,このときみたいにキャストすることになるかも http://oshiete1.goo.ne.jp/qa3472698.html ただし,終了時 COMではReleaseComObjectで解放する必要があるかも。 http://okwave.jp/qa2768365.html #あまり勉強する気が起きないので未だに理解してない
補足
ご返信、有難う御座います。 検索すれば、やっぱり過去に似た事例があるんですね; 今からドキュメントを調べてみます、 取り急ぎ、お礼の書き込みでした。
- redfox63
- ベストアンサー率71% (1325/1856)
自動チェックボックス? そんなのってありましたっけ HTMLエレメントの話ですよね 同じ名前のチェックボックスをグループ化したいってことですか 単にブラウザに表示されたチェックボックスのチェックを入れたいなら ブラウザのDocumentから getElementByIdなどでINPUTエレメントを特定してこれのValueプロパティを操作ってことになると思いますよ DOMDocumentを取得しなきゃいけなかったかも ・・・
補足
ご返信有難う御座います。 valueプロパティまでのクラス階層の到達の経路を探しています。 追記します。 webBrowser1.Document.All.GetElementsByName("textbox")[0].InnerText = "aiueo" ↑上記でテキストボックスを自動で埋めることは出来るのですが、 チェックボックスの場合のクラス階層が分からないのです。 =ture などで、bool型で値を突っ込めるプロパティがあると思うのですが、 webBrowser1.Document.All.GetElementsByName("example")[0].value = true; webBrowser1.Document.All.GetElementsByName("example").value (上記は両方とも間違いです。) といった感じで、、ご存知のものをご教授いただけたら・・・
お礼
上記コードで動きました! 『Microsoft HTML Object Library』 の知識が自分にはすっぽりなかったのが痛かったです; ご指摘有難う御座いました。 webbrowserコントロールをMsdnで探しましたが、 現在、操作できそうなものが見つかっていません。 (どこかにあると思うんですが・・・) 皆さん、有難う御座いました!
補足
ご返信、有難う御座います。 >MSDNなどで何が取得出来ているのかを確認しましょう Msdnが基本ですね;すみません。 >Microsoft HTML Object Library ご指摘有難う御座います! 今からやってみます。取り急ぎお礼の書き込みでした。