首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > VB Dotnet >

求教vb.net webbrowser的多线程有关问题,很好玩

2013-07-01 
求教vb.net webbrowser的多线程问题,很好玩代码是这样:。。。。。。WebBrowser2.DocumentText partHtmlWhile W

求教vb.net webbrowser的多线程问题,很好玩
代码是这样:
            。。。。。。
            WebBrowser2.DocumentText = partHtml

            While WebBrowser2.ReadyState <> WebBrowserReadyState.Complete
                Application.DoEvents()
                System.Threading.Thread.Sleep(100)
            End While

            Dim InnerText As String = CStr(WebBrowser2.Document.Body.InnerText)
            。。。。。。

单线程没问题,但是放到多线程中,到While WebBrowser2.ReadyState <> WebBrowserReadyState.Complete 这句就异常:“未处理invalidcastexception”,指定的转换无效。于是我把WHILE循环去掉了尝试一下,结果到了这一句 Dim InnerText As String = CStr(WebBrowser2.Document.Body.InnerText) 还是那个异常。怎么也过不去,大家帮支个招吧,强调:一定实在非UI线程中,也就是必须多线程。这个控件和其他任何控件没关系,这个线程涉及到的控件就是它。别看他叫webbrowser2,其实没有1,整个工程也就它哥一个webbrowser。
[解决办法]
webbrowser一定不能多线程。别折腾了。

即便放在多线程,也得和界面线程同步,等于单线程。

热点排行