「WebView2」が.NETに対応 ~Chromiumベースの新Microsoft Edgeをアプリに組み込み

米Microsoftは8月19日(現地時間)、.NETアプリケーション向けの「WebView2」コントロールのプレビューリリースを発表。できるようになる。

同社は古くから「Internet Explorer」をベースとした「WebBrowser」コントロールを提供し、デスクトップアプリでWebコンテンツをホストできるようにしていたが、Webのモダン化に追従できないとして、後継の「WebView」を新たに開発した。しかし、この「WebView」コントロールは「EdgeHTML」の「Microsoft Edge」をベースにしており、Windows 10でしか利用できない。さらには「EdgeHTML」ベースの「Microsoft Edge」そのものが「Chromium」ベースの「Microsoft Edge」にとってかわられてしまい、これ以上の機能更新が期待できなくなってしまった。

「WebView2」が.NETに対応 ~Chromiumベースの新Microsoft Edgeをアプリに組み込み

そこで昨年の“Build 2019”カンファレンスで発表されたのが、「Chromium」ベースの新しい「Microsoft Edge」に基づく「WebView2」コントロールだ。当初はWindows 10上のWin32 C++開発でしか利用できなかったが、その後も定期的にアップデートされ(基本的に6週間おき)、今年5月には.NETとUWP(WinUI 3.0)のサポートが発表されていた。今ではナビゲーション、Webメッセージング(アプリケーションと「WebView2」コントロール間の通信)、ネイティブオブジェクトインジェクション(JavaScriptから直接アプリケーションオブジェクトにアクセス)など、多くの機能が提供されている。

デスクトップ版「Outlook」にWebコンテンツを組み込んだ例。アプリと「WebView2」の間で通信することも可能

現在「WebView2」がサポートされている開発プラットフォームは以下の通り。WPFやWindows Formsといったお馴染みのUIフレームワークでも利用できる。

対応OSも拡充されており、Windows 8.x/7などの古いOSでも利用できるようになっている。

実際に開発アプリケーションへ「WebView2」コントロールを組み込むには、「NuGet」パッケージ(Microsoft.Web.WebView2)を利用する。ただし、“-prerelease”オプションを付けてプレビュー版を導入する必要があるので注意したい。

関連記事