從 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中文網其他相關文章!