度々失礼します。
Invokeで値を取得する方法を探しております。
lang
1Private Sub browser(value) 2 Dim SetbrowserdocDgl As New SetbrowserdocumentDelegate(AddressOf setbrowserdocument) 3 Dim getbrowserdocDgl As New getbrowserdocumentdelegate(AddressOf getbrowserdocument) 4 Dim ghtml As String = Cstr(Me.WebBrowser1.Invoke(getbrowserdocDgl)) 5 Dim mc As System.Text.RegularExpressions.MatchCollection = System.Text.RegularExpressions.Regex.Matches(ghtml, "<body>(.*?)<\/body>") 6 For Each m As System.Text.RegularExpressions.Match In mc 7 Dim body As String = m.Value & "<div class='tweet'>" & value & "</div>" 8 Dim html = "<html><head><link rel=""stylesheet"" type=""text/css"" href=""style.css""></head><body>" & body & "</body></html>" '書き込み 9 10 11 Me.WebBrowser1.Invoke(SetbrowserdocDgl, html) 12 Next 13 End Sub 14 15 Private Sub setbrowserdocument(html) 16 17 WebBrowser1.Document.Write(html) 18 End Sub 19 20 Private Function getbrowserdocument() As String 21 22 Return Me.WebBrowser1.DocumentText 23 End Function
このようなソースなのですが、毎回getbrowserdocument()のreturnまで値が入っているにもかかわらず、
Dim ghtml As String = Cstr(Me.WebBrowser1.Invoke(getbrowserdocDgl))
の部分でghtmlがnothingになってしまいます。
なぜなのでしょうか?
よろしくお願いいたします。
追記
フォームロードイベントから別スレッドを呼び出し、その別スレッドからbrowserメソッドを呼び出しています
回答1件
あなたの回答
tips
プレビュー