c#_在多线程下访问WebBrowser对象报异常,"指定的转换无效。"
在 WebBrowser控件的DocumentCompleted事件里面激活了一个异步函数,这个函数的作用是根据传入的url,在WebBrowser里面所有的窗体里面搜索指定url的页面,如果检索到折返回这个htmlDocument的对象,可以每次运行到这个异步函数的时候就报错,我用调试在这个函数里面调试的时候,WebBrowser下的所有对象都显示函数超时,无法正常进行调试请高手指点.下面是部分代码
/// <summary> /// WebBrowser页面加载完成事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void myWebBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) { switch (e.Url.AbsoluteUri) { case "127.0.0.1/test2_2.aspx": addFunction(set1 ); break; default: break; } } /// <summary> /// 获取指定的页面框架 /// </summary> /// <param name="url"></param> /// <returns></returns> HtmlDocument getDom( string url) { try { if (url == "") { ////这个位置特别容易报错 return myWebBrowser.Document; } if (myWebBrowser.Document.Url.AbsoluteUri == url) ////这个位置特别容易报错 { return myWebBrowser.Document; } foreach (HtmlWindow item in myWebBrowser.Document.Window.Frames) { if (item.Document.Url.AbsoluteUri == url) { return item.Document; } } return null; } catch (Exception e) { return null; } }