我正在设计一个小型的C#应用程序,其中有一个Web浏览器 . 我目前在我的计算机上拥有所有默认值,表示谷歌浏览器是我的默认浏览器,但当我单击我的应用程序中的链接以在新窗口中打开时,它会打开Internet Explorer . 有没有办法让这些链接在默认浏览器中打开?或者我的电脑有什么问题吗?
我的问题是我在应用程序中有一个webbrowser,所以说你去谷歌并输入“堆栈溢出”并右键单击第一个链接并单击“在新窗口中打开”它在IE中打开而不是Chrome . 这是我编码不当的东西,还是我的电脑上的设置不正确
===编辑===
这真的很烦人 . 我已经知道浏览器是IE浏览器,但我以前工作正常 . 当我点击它在chrome中打开的链接时 . 我当时正在使用sharp develop来制作应用程序,因为我无法启动c#express . 我做了一个全新的Windows安装,因为我在我的应用程序中并不太远,我决定重新开始,现在我遇到了这个问题 . 这就是为什么我不确定它是不是我的电脑 . 为什么IE会在点击链接时启动整个浏览器,而不是简单地在默认浏览器中打开新链接?
10 回答
你可以写
EDIT :
WebBrowser
控件是IE的嵌入式副本 .因此,它内部的任何链接都将在IE中打开 .
要更改此行为,您可以处理
Navigating
事件 .这为我打开了默认值:
使用当前版本的资源管理器更新注册表
@ "Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION"
在UWP中:
您是否尝试过这里提到的
Process
:http://msdn.microsoft.com/de-de/library/system.diagnostics.process.aspx?你可以用
看看GeckoFX control .
这应该可以解决你的问题
对于那些在dotnet核心中发现这个问题的人 . 我找到了一个解决方案here
码:
动态打开
试试这个,老派的方式;)
使用:openit(“www.google.com”);