次の方法で共有


Windows 上の WebView JavaScript アラート

このプラットフォーム固有設定を使用すると、WebView で UWP メッセージ ダイアログ内に JavaScript アラートを表示できるようになります。 WebView.IsJavaScriptAlertEnabled 添付プロパティを boolean 値に設定し、XAML で使用されます。

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

あるいは、Fluent API を使用して C# から使用することもできます。

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);

WebView.On<Windows> メソッドでは、このプラットフォーム固有設定がユニバーサル Windows プラットフォーム上でのみ実行されるように指定します。 Xamarin.Forms.PlatformConfiguration.WindowsSpecific 名前空間内の WebView.SetIsJavaScriptAlertEnabled メソッドは、JavaScript アラートが有効かどうかを制御するために使用されます。 さらに、WebView.SetIsJavaScriptAlertEnabled メソッドを使用し、JavaScript アラートを (それが有効かどうかを返す IsJavaScriptAlertEnabled メソッドを呼び出して) 切り替えることができます。

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

その結果、JavaScript アラートを UWP メッセージ ダイアログ内に表示できます。

WebView JavaScript アラート プラットフォーム固有設定