Rumah >pembangunan bahagian belakang >C++ >Mengapa Pautan C# Saya Dibuka dalam Internet Explorer Daripada Penyemak Imbas Lalai Saya?
Menyelesaikan Teka-teki Pembukaan Pautan C#: Internet Explorer lwn. Penyemak Imbas Lalai Anda
Cabaran yang kerap dalam pembangunan aplikasi C# melibatkan komponen penyemak imbas web: pautan secara tidak dijangka dibuka dalam Internet Explorer (IE), walaupun apabila penyemak imbas lain (seperti Chrome) ditetapkan sebagai lalai. Masalah ini, terutamanya apabila aplikasi yang berfungsi sebelum ini tiba-tiba menjadi lalai kepada IE, boleh mengecewakan.
Memahami Punca Punca: Kawalan Penyemak Imbas Web
Isu ini berpunca daripada kawalan WebBrowser
dalam C#. Kawalan ini pada asasnya adalah contoh tertanam IE. Akibatnya, pautan yang diklik di dalamnya akan terbuka secara semula jadi di IE.
Penyelesaian 1: Melancarkan Pautan Luaran dengan Penyemak Imbas Lalai
Untuk membuka URL luaran dalam penyemak imbas pilihan pengguna, pendekatan mudah ialah:
<code class="language-csharp">System.Diagnostics.Process.Start("http://google.com");</code>
Kod ini secara langsung memanggil penyemak imbas lalai untuk membuka URL yang disediakan.
Penyelesaian 2: Memintas Peristiwa Navigasi Penyemak Imbas Web
Jika anda mesti mengurus pautan dalam kawalan WebBrowser
itu sendiri, gunakan acara Navigating
nya. Ini membenarkan ubah hala ke penyemak imbas lalai:
<code class="language-csharp">private void WebBrowser_Navigating(object sender, NavigatingCancelEventArgs e) { // Open the link using the default browser System.Diagnostics.Process.Start(e.Url); // Prevent the WebBrowser control from handling the navigation e.Cancel = true; }</code>
Nota Keserasian: Rangka Kerja .NET, Teras .NET dan net50
Penyelesaian di atas boleh dipercayai untuk Rangka Kerja .NET. Walau bagaimanapun, mereka tidak serasi dengan projek .NET Core atau net50. Untuk rangka kerja yang lebih baharu ini, pertimbangkan untuk menggunakan perpustakaan alternatif seperti CefSharp.
Atas ialah kandungan terperinci Mengapa Pautan C# Saya Dibuka dalam Internet Explorer Daripada Penyemak Imbas Lalai Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!