VisualStudio2008にてフォーㇺにWebBrowserを配置し
いくつかのページを遷移するプログラムを作成したいです。
クリックイベントを複数回に分ければ実現できたのですが
1つのイベント内で処理を行いたいです。
例としては下記のボタン2クリック⇒ボタン3クリックの流れで行いたいのですが、
①の箇所に②を書くと、前回ページの情報が取得されてしまいます。
何か、いい方法はないでしょうか?
コード Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click flg = True Dim all As HtmlElementCollection = WebBrowser1.Document.All Dim forms As HtmlElementCollection = all.GetElementsByName("OP_OSA0020_002_22Form") forms(0).InvokeMember("submit") ' フォームのサブミット Application.DoEvents() Do Do Application.DoEvents() Loop While WebBrowser1.IsBusy Or WebBrowser1.ReadyState <> WebBrowserReadyState.Complete Application.DoEvents() Loop While WebBrowser1.IsBusy Or WebBrowser1.ReadyState <> WebBrowserReadyState.Complete End Sub Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click 'ボタンをクリック Click_Tag("a", "linkBtn js-weightLimitBtn") End Sub 'タグ、クラス名を指定してクリック Private Sub Click_Tag(ByVal TagName As String, ByVal ClassNames As String) Dim theElementCollection As HtmlElementCollection = Nothing・・・・・② '指定タグの情報をリストで取得 theElementCollection = WebBrowser1.Document.GetElementsByTagName(TagName) 'リストのタグ情報を回す For Each curElement As HtmlElement In theElementCollection '指定のクラス名かどうか確認する If curElement.GetAttribute("classname").ToString = ClassNames Then '指定のクラス名であれば、次の処理を行う 'クリック curElement.InvokeMember("Click") '指定クラス名の操作が完了したら、処理を終了する Exit For End If Next End Sub