ホームページ > バックエンド開発 > C++ > C# からデフォルトのブラウザーで Web ページを開くにはどうすればよいですか?

C# からデフォルトのブラウザーで Web ページを開くにはどうすればよいですか?

Patricia Arquette
リリース: 2025-01-20 10:51:08
オリジナル
368 人が閲覧しました

How to Open Web Pages in the Default Browser from C#?

C# アプリケーションから既定のブラウザーで URL を開く

C# 開発者は、多くの場合、ユーザーのデフォルトのブラウザを使用して Web リンクを開く必要があります。 ただし、多くの場合、組み込みの WebBrowser コントロールは、システム設定に関係なく、デフォルトで Internet Explorer になります。 この記事では、この制限を克服するためのソリューションについて概説します。

問題: WebBrowser コントロールの IE 依存関係

C# の WebBrowser コントロールは、本質的には埋め込み Internet Explorer インスタンスです。 別のブラウザがデフォルトとして設定されている場合でも、その中でクリックされたリンクは IE で開きます。

解決策: URL を外部から起動する

デフォルトのブラウザで URL を起動するには、主に 2 つのアプローチがあります。

方法 1: System.Diagnostics.Process.Start

を使用する

この簡単なメソッドは、.NET Framework アプリケーションに適しており、Process.Start メソッドを利用して新しいプロセスを起動し、システムのデフォルトのブラウザで URL を開きます。

<code class="language-csharp">System.Diagnostics.Process.Start("http://google.com");</code>
ログイン後にコピー

方法 2: ナビゲーション イベントをインターセプトする

このアプローチには、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# 開発者は、WebBrowser コントロールの固有の制限に関係なく、ユーザーの好みのデフォルト ブラウザで Web リンクを確実に開くことができます。

以上がC# からデフォルトのブラウザーで Web ページを開くにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート