Modo de execução do WebView no Windows
Esse específico da plataforma define o thread no qual a hospeda WebView
seu conteúdo. Ele é consumido em XAML definindo a WebView.ExecutionMode
propriedade associável como um WebViewExecutionMode
valor de enumeração:
<ContentPage ...
xmlns:windows="clr-namespace:Xamarin.Forms.PlatformConfiguration.WindowsSpecific;assembly=Xamarin.Forms.Core">
<StackLayout>
<WebView ... windows:WebView.ExecutionMode="SeparateThread" />
...
</StackLayout>
</ContentPage>
Como alternativa, ele pode ser consumido do C# usando a API fluente:
using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.WindowsSpecific;
...
WebView webView = new Xamarin.Forms.WebView();
webView.On<Windows>().SetExecutionMode(WebViewExecutionMode.SeparateThread);
O WebView.On<Windows>
método especifica que esse específico da plataforma só será executado na Plataforma Universal do Windows. O WebView.SetExecutionMode
método, no Xamarin.Forms.PlatformConfiguration.WindowsSpecific
namespace, é usado para definir o thread no qual a WebView
hospeda seu conteúdo, com a WebViewExecutionMode
enumeração fornecendo três valores possíveis:
SameThread
indica que o conteúdo está hospedado no thread da interface do usuário. Esse é o valor padrão para oWebView
no Windows.SeparateThread
indica que o conteúdo está hospedado em um thread em segundo plano.SeparateProcess
indica que o conteúdo está hospedado em um processo separado do processo do aplicativo. Não há um processo separado por instância do WebView e, portanto, todas as instâncias do WebView de um aplicativo compartilham o mesmo processo separado.
Além disso, o GetExecutionMode
método pode ser usado para retornar a corrente WebViewExecutionMode
para o WebView
.