WebView-Ausführungsmodus unter Windows
Diese plattformspezifische Legt den Thread fest, auf dem ein WebView
Inhalt gehostet wird. Sie wird in XAML genutzt, indem sie die bindungsfähige Eigenschaft WebView.ExecutionMode
auf einen WebViewExecutionMode
-Enumerationswert festlegt:
<ContentPage ...
xmlns:windows="clr-namespace:Xamarin.Forms.PlatformConfiguration.WindowsSpecific;assembly=Xamarin.Forms.Core">
<StackLayout>
<WebView ... windows:WebView.ExecutionMode="SeparateThread" />
...
</StackLayout>
</ContentPage>
Alternativ kann sie mit der Fluent-API von C# genutzt werden:
using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.WindowsSpecific;
...
WebView webView = new Xamarin.Forms.WebView();
webView.On<Windows>().SetExecutionMode(WebViewExecutionMode.SeparateThread);
Die WebView.On<Windows>
Methode gibt an, dass diese plattformspezifische Nur auf dem Universelle Windows-Plattform ausgeführt wird. Die WebView.SetExecutionMode
Methode im Xamarin.Forms.PlatformConfiguration.WindowsSpecific
Namespace wird verwendet, um den Thread festzulegen, in dem ein WebView
Inhalt gehostet wird, wobei die WebViewExecutionMode
Enumeration drei mögliche Werte bereitstellt:
SameThread
gibt an, dass Inhalte im UI-Thread gehostet werden. Dies ist der Standardwert für windowsWebView
.SeparateThread
gibt an, dass Inhalte in einem Hintergrundthread gehostet werden.SeparateProcess
gibt an, dass Inhalte in einem separaten Prozess außerhalb des App-Prozesses gehostet werden. Es gibt keinen separaten Prozess pro WebView-Instanz, und daher verwenden alle WebView-Instanzen einer App denselben separaten Prozess.
Darüber hinaus kann die GetExecutionMode
Methode verwendet werden, um den Aktuellen WebViewExecutionMode
für die WebView
.