我希望我的Webbrowser控件中的链接在默认浏览器中打开,而不是在Windows控件中打开 .
在下面的链接中解决了完全相同的问题,我遵循相同的拦截导航事件并取消它的解决方案 .
How to open a link in webBrowser control in external browser?
但是当我实施解决方案时,Chrome是默认浏览器时效果很好 . 当IE(Ver 10)是默认浏览器时,单击该链接将在同一Web浏览器控件中打开URL . 有任何想法吗?
我希望我的Webbrowser控件中的链接在默认浏览器中打开,而不是在Windows控件中打开 .
在下面的链接中解决了完全相同的问题,我遵循相同的拦截导航事件并取消它的解决方案 .
How to open a link in webBrowser control in external browser?
但是当我实施解决方案时,Chrome是默认浏览器时效果很好 . 当IE(Ver 10)是默认浏览器时,单击该链接将在同一Web浏览器控件中打开URL . 有任何想法吗?
1 回答
Process.Start“启动(或重用)由此Process组件的StartInfo属性指定的进程资源,并将其与组件关联 . ”
我怀疑,由于WebBrowser控件实际上是一个精简的IE浏览器,使用Process.Start重用WebBrowser控件而不是启动iexplore.exe的新实例 .
您可能需要让代码检查注册表以查看用户的默认浏览器是什么(Windows Registry key for "check whether IE is the default browser"?) . 如果您发现默认浏览器设置为IE,则更改Process.Start方法以显式启动iexplore.exe