Alertas de JavaScript de WebView en Windows

Descargar ejemploDescargar el ejemplo

Esta plataforma específica permite WebView mostrar alertas de JavaScript en un cuadro de diálogo de mensaje de UWP. Se consume en XAML estableciendo la WebView.IsJavaScriptAlertEnabled propiedad adjunta en un boolean valor:

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

Como alternativa, se puede consumir desde C# mediante la API fluida:

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

var webView = new Xamarin.Forms.WebView
{
  Source = new HtmlWebViewSource
  {
    Html = @"<html><body><button onclick=""window.alert('Hello World from JavaScript');"">Click Me</button></body></html>"
  }
};
webView.On<Windows>().SetIsJavaScriptAlertEnabled(true);

El WebView.On<Windows> método especifica que esta plataforma específica solo se ejecutará en el Plataforma universal de Windows. El WebView.SetIsJavaScriptAlertEnabled método , en el Xamarin.Forms.PlatformConfiguration.WindowsSpecific espacio de nombres , se usa para controlar si las alertas de JavaScript están habilitadas. Además, el WebView.SetIsJavaScriptAlertEnabled método se puede usar para alternar las alertas de JavaScript llamando al IsJavaScriptAlertEnabled método para devolver si están habilitados:

_webView.On<Windows>().SetIsJavaScriptAlertEnabled(!_webView.On<Windows>().IsJavaScriptAlertEnabled());

El resultado es que las alertas de JavaScript se pueden mostrar en un cuadro de diálogo de mensaje de UWP:

WebView JavaScript alert platform-specific