Modo de ejecución de WebView en Windows
Este específico de la plataforma establece el subproceso en el que un WebView
hospeda su contenido. Se consume en XAML estableciendo la WebView.ExecutionMode
propiedad enlazable en un WebViewExecutionMode
valor de enumeración:
<ContentPage ...
xmlns:windows="clr-namespace:Xamarin.Forms.PlatformConfiguration.WindowsSpecific;assembly=Xamarin.Forms.Core">
<StackLayout>
<WebView ... windows:WebView.ExecutionMode="SeparateThread" />
...
</StackLayout>
</ContentPage>
Como alternativa, se puede consumir desde C# mediante la API fluida:
using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.WindowsSpecific;
...
WebView webView = new Xamarin.Forms.WebView();
webView.On<Windows>().SetExecutionMode(WebViewExecutionMode.SeparateThread);
El WebView.On<Windows>
método especifica que esta plataforma específica solo se ejecutará en el Plataforma universal de Windows. El WebView.SetExecutionMode
método , en el Xamarin.Forms.PlatformConfiguration.WindowsSpecific
espacio de nombres , se usa para establecer el subproceso en el que un WebView
hospeda su contenido, con la WebViewExecutionMode
enumeración que proporciona tres valores posibles:
SameThread
indica que el contenido está hospedado en el subproceso de la interfaz de usuario. Este es el valor predeterminado paraWebView
en Windows.SeparateThread
indica que el contenido se hospeda en un subproceso en segundo plano.SeparateProcess
indica que el contenido se hospeda en un proceso independiente fuera del proceso de la aplicación. No hay un proceso independiente por instancia de WebView, por lo que todas las instancias de WebView de una aplicación comparten el mismo proceso independiente.
Además, el GetExecutionMode
método se puede usar para devolver el objeto actual WebViewExecutionMode
para .WebView