Режим выполнения WebView в Windows
Эта платформа задает поток, на котором WebView
размещается его содержимое. Он используется в XAML, задав WebView.ExecutionMode
привязываемое свойство значение WebViewExecutionMode
перечисления:
<ContentPage ...
xmlns:windows="clr-namespace:Xamarin.Forms.PlatformConfiguration.WindowsSpecific;assembly=Xamarin.Forms.Core">
<StackLayout>
<WebView ... windows:WebView.ExecutionMode="SeparateThread" />
...
</StackLayout>
</ContentPage>
Кроме того, его можно использовать из C# с помощью api fluent:
using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.WindowsSpecific;
...
WebView webView = new Xamarin.Forms.WebView();
webView.On<Windows>().SetExecutionMode(WebViewExecutionMode.SeparateThread);
Метод WebView.On<Windows>
указывает, что эта платформа будет выполняться только в универсальная платформа Windows. Метод WebView.SetExecutionMode
в Xamarin.Forms.PlatformConfiguration.WindowsSpecific
пространстве имен используется для задания потока, на котором WebView
размещается его содержимое, с WebViewExecutionMode
перечислением, предоставляющим три возможных значения:
SameThread
указывает, что содержимое размещено в потоке пользовательского интерфейса. Это значение по умолчанию дляWebView
Windows.SeparateThread
указывает, что содержимое размещено в фоновом потоке.SeparateProcess
указывает, что содержимое размещено в отдельном процессе от процесса приложения. Для каждого экземпляра WebView не существует отдельного процесса, поэтому все экземпляры WebView приложения используют один и тот же отдельный процесс.
Кроме того, GetExecutionMode
метод можно использовать для возврата текущего WebViewExecutionMode
для объекта WebView
.