如果我在visual studio -VB.net中使用标准网络浏览器,最终用户将使用哪个版本的Internet Explorer,我的(调试)PC上的版本,或者他的PC上的版本?是否有可能改变它?
答案 0 :(得分:0)
我遇到浏览器版本控制问题,并且受到用户在其PC上安装的浏览器的影响。使用IE10 / 11,您无法在.NET应用程序中正确设置兼容模式。
我的解决方案是使用Gecko,它是FireFox for .NET的一个亲戚,可以替代WebBrowser:
您需要下载并添加Geckofx-Core and Geckofx-Winforms dll的参考文献。
Imports Gecko
Imports Gecko.DOM
...
'In your form load:
Gecko.Xpcom.Initialize("xulrunner\")
..
'In a function:
'Here i used a Tab
Dim tabA As New TabPage
Dim browser As New GeckoWebBrowser
web_br = browser
browser.Dock = DockStyle.Fill
tabA.Controls.Add(browser)
Me.TabControl1.TabPages.Clear()
Me.TabControl1.TabPages.Add(tabA)
Me.TabControl1.SelectedTab = tabA
CType(TabControl1.SelectedTab.Controls.Item(0), GeckoWebBrowser).Navigate(Application.StartupPath & "\PathTo\index.html")
答案 1 :(得分:0)
VB / NET和C#中的WebBrowser控件始终默认显示IE 7“文档模式”中的页面,这意味着无论实际版本是什么,浏览器都充当Internet Explorer 7。
只要在用户的计算机上安装了该版本或更高版本,就可以使浏览器控件像IE的新版本一样运行。通常解决方案是使用FEATURE_BROWSER_EMULATION注册表项;将X-UA-Compatible标题放在您要显示的HTML文件中也应该可以解决问题。
另见:Will the IE9 WebBrowser Control Support all of IE9's features, including SVG?