Bagikan melalui


Mode Eksekusi WebView di Windows

Platform ini khusus mengatur utas tempat host menghosting WebView kontennya. Ini digunakan dalam XAML dengan mengatur WebView.ExecutionMode properti yang dapat diikat ke WebViewExecutionMode nilai enumerasi:

<ContentPage ...
             xmlns:windows="clr-namespace:Xamarin.Forms.PlatformConfiguration.WindowsSpecific;assembly=Xamarin.Forms.Core">
    <StackLayout>
        <WebView ... windows:WebView.ExecutionMode="SeparateThread" />
        ...
    </StackLayout>
</ContentPage>

Atau, dapat dikonsumsi dari C# menggunakan API fasih:

using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.WindowsSpecific;
...

WebView webView = new Xamarin.Forms.WebView();
webView.On<Windows>().SetExecutionMode(WebViewExecutionMode.SeparateThread);

Metode WebView.On<Windows> menentukan bahwa khusus platform ini hanya akan berjalan pada Platform Windows Universal. Metode ini WebView.SetExecutionMode , di Xamarin.Forms.PlatformConfiguration.WindowsSpecific namespace layanan, digunakan untuk mengatur utas tempat host menghosting WebView kontennya, dengan WebViewExecutionMode enumerasi yang menyediakan tiga nilai yang mungkin:

  • SameThread menunjukkan bahwa konten dihosting pada utas UI. Ini adalah nilai default untuk WebView pada Windows.
  • SeparateThread menunjukkan bahwa konten dihosting pada utas latar belakang.
  • SeparateProcess menunjukkan bahwa konten dihosting pada proses terpisah dari proses aplikasi. Tidak ada proses terpisah per instans WebView, sehingga semua instans WebView aplikasi berbagi proses terpisah yang sama.

Selain itu, GetExecutionMode metode ini dapat digunakan untuk mengembalikan arus WebViewExecutionMode untuk WebView.