[.Net][WPF]WebView2をブランク画面で初期化する方法

WebView2は初期化時にSourceを指定しないとエラーを出して終了してします。
何らかのURLをしていないといけないのですが、ブランクページを表示したいときもあります。
そのような場合はSouceにabout:blankを指定します。

XAMLの場合は以下のように指定します。

<wv2:WebView2 Name="webview" Source="about:blank" />

キャッシュディレクトリの指定などを行う必要がある場合は、XAMLでのSource指定は行わずに、WebView2を使用しているクラスのコンストラクタで以下のようにします。

//クラスのコンストラクタ
public SampleConstructor()
{
    InitializeComponent();
    
    //WebView2の初期設定を行う
    InitializeWebView2Cache();
}

private async void InitializeWebView2Cache()
{
    //キャッシュフォルダを指定する
    String cacheFolderPath = System.IO.Path.Combine(System.IO.Path.GetTempPath(), "WebView2Chache");
    CoreWebView2Environment webView2Environment = await Microsoft.Web.WebView2.Core.CoreWebView2Environment.CreateAsync(null, cacheFolderPath);
    await epubWebBrowser.EnsureCoreWebView2Async(webView2Environment);
    
    //Sourceを指定する
    epubWebBrowser.Source = new Uri("about:blank");
}

0 件のコメント :

コメントを投稿