从 C# 应用程序在默认浏览器中打开 URL
C# 开发人员经常需要使用用户的默认浏览器打开 Web 链接。 但是,无论系统设置如何,内置 WebBrowser
控件通常默认为 Internet Explorer。 本文概述了克服此限制的解决方案。
问题:WebBrowser
控件的 IE 依赖
C# 中的 WebBrowser
控件本质上是一个嵌入式 Internet Explorer 实例。 即使将其他浏览器设置为默认浏览器,在其中单击的链接也将在 IE 中打开。
解决方案:从外部启动 URL
在默认浏览器中启动 URL 存在两种主要方法:
方法一:使用System.Diagnostics.Process.Start
这种简单的方法适用于 .NET Framework 应用程序,利用 Process.Start
方法启动新进程,在系统默认浏览器中打开 URL。
<code class="language-csharp">System.Diagnostics.Process.Start("http://google.com");</code>
方法二:拦截导航事件
此方法涉及处理 Navigating
控件的 WebBrowser
事件。 这允许拦截链接点击并在外部打开它们。
<code class="language-csharp">private void WebBrowser_Navigating(object sender, WebBrowserNavigatingEventArgs e) { System.Diagnostics.Process.Start(e.Url.ToString()); e.Cancel = true; // Prevent the WebBrowser control from also opening the link }</code>
在这里,Navigating
事件被订阅。 单击链接时,事件处理程序会在默认浏览器中启动 URL,并使用 WebBrowser
.e.Cancel = true;
取消
通过使用任一方法,C# 开发人员都可以在用户首选的默认浏览器中可靠地打开 Web 链接,而不管 WebBrowser
控件的固有限制。
以上是如何从 C# 在默认浏览器中打开网页?的详细内容。更多信息请关注PHP中文网其他相关文章!