プロが教える店舗&オフィスのセキュリティ対策術

WebBrowserでHtmlを取得する方法をおしえてください

フォーム上に、WebBrowser1、TextBox1、Button1を配置しています。
TextBox1にHtmlを表示し、Button1は、WebBrowser1に表示している
WEBページを更新します。

やりたい事
 (1)フォームを開いた時に、URLで指定したWEBページを表示させ
  TextBox1にHtmlを表示させる。

 (2)Button1をクリックした時、表示しているWEBページを更新する。
  更新後のHtmlをTextBox1に表示させる。

 (3)TextBox1の表示が完了したらHtmlを処理する。(未着手)

現在、(1)は動作するのですが、(2)が動作しません(TextBox1のHtmlが更新されない)

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
WebBrowser1.Navigate(オッズURL):webcompflag = False

Do While (webcompflag = False)
System.Windows.Forms.Application.DoEvents() System.Threading.Thread.Sleep(10)
Loop
TextBox1.Text = WebBrowser1.Document.Body.InnerHtml
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

TextBox1.Text = ""
If Not WebBrowser1.Url.Equals("about:blank") Then
WebBrowser1.Refresh() : webcompflag = False
Do While (webcompflag = False)
System.Windows.Forms.Application.DoEvents() System.Threading.Thread.Sleep(10)
Loop
TextBox1.Text = WebBrowser1.Document.Body.InnerHtml
End Sub

何がいけないのか分かりません
よろしくお願いします。

A 回答 (1件)

webcompflag を True にしてるのはどこでしょうか?


もしかしたら DocumentCompleted イベント内ですか?

Reflesh メソッドは再読み込みなので、Navigating、Navigated、DocumentCompleted イベントは発生しない、と MSDN に書いてあります。
http://msdn.microsoft.com/ja-jp/library/txewax99 …

こんな解決方法とか
http://social.msdn.microsoft.com/Forums/ja-JP/vc …

あとはまぁ Google で
http://www.google.com/search?hl=ja&num=50&q=webb …
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!