WebView2タイトルバーのアイコン消失を修正|Runtime 152の更新手順

Microsoft Edge WebView2で暗いタイトルバーを使ったとき、最小化・最大化・閉じるボタンの記号が見えなくなる問題は、Microsoftが2026年8月3日公開のPreview Runtime 152.0.4181.0で修正しています。まず確認すべきなのはSDKのバージョンではなく、アプリが実際に読み込んでいるWebView2 Runtimeが152.0.4181.0以上かどうかです。(Microsoft Learn)

開発・検証環境では、SDK 1.0.4181-prereleaseとRuntime 152.0.4181.0以降を組み合わせ、アプリを再ビルドして再起動します。SDKだけを更新しても、実行時に古いRuntimeが使われていればWebView2のタイトルバーアイコン消失は直りません。(Microsoft Learn)

目次

WebView2の暗いタイトルバーでボタンが見えない問題は修正済み

今回の問題は、WebView2のWindow Controls Overlayで暗い背景色を使った場合に、キャプションボタンのグリフが見えなくなる不具合です。

ここでいうグリフとは、タイトルバー右上に表示される次の記号を指します。

  • 最小化ボタンの「-」
  • 最大化・元に戻すボタンの「□」
  • 閉じるボタンの「×」

Microsoftのリリースノートでは、「暗いWindow Controls Overlayの背景上で、キャプションボタンのグリフが見えなくなる問題を修正した」と明記されています。(Microsoft Learn)

項目内容
主な症状暗いタイトルバーで最小化・最大化・閉じる記号が見えない
修正が最初に示されたRuntimePreview Runtime 152.0.4181.0
公開日2026年8月3日
対応するPrerelease SDK1.0.4181-prerelease
最初に確認すること実際に読み込まれたRuntimeのバージョン
基本的な対処Runtime更新、必要に応じたSDK更新、再ビルド、アプリ再起動

消えているのはアプリアイコンではなくcaption glyphs

「タイトルバーアイコンが消えた」という表現では、複数の問題が混同されやすいため注意が必要です。

WebView2のWindow Controls Overlayを有効にすると、WebView2がウィンドウ右上に最小化・最大化・閉じるボタンを描画します。背景色を指定した場合は、WebView2が前景色やホバー色を自動計算する仕様です。今回の修正対象は、このボタン内に描画される記号です。(Microsoft Learn)

見えなくなったもの今回の修正対象か
最小化・最大化・閉じる記号対象
タイトルバー左側のアプリロゴ対象外
タスクバーのアプリアイコン対象外
Webページのfavicon対象外
タイトル文字原則として対象外
ボタン領域そのものがクリックできない別の設定不良も確認が必要

アプリロゴやタスクバーアイコンが消えている場合は、実行ファイルのアイコンリソース、アプリマニフェスト、ショートカット、ウィンドウクラスなどを確認します。Runtime 152のキャプショングリフ修正だけでは直りません。

SDKとRuntimeの違いを理解してから更新する

WebView2では、SDKとRuntimeのバージョンを分けて考える必要があります。

構成要素役割今回の問題との関係
WebView2 SDKアプリからWebView2を操作するAPI、ライブラリ、ヘッダーなどWCO APIを利用する開発環境に関係する
WebView2 RuntimeWebコンテンツやWebView2固有UIを実際に処理・描画するキャプショングリフの表示修正が含まれる
アプリ本体背景色、ウィンドウスタイル、WCOの有効化などを設定する発生条件や見え方に影響する

今回の修正はRuntimeのバグ修正として公開されています。そのため、NuGetパッケージだけを更新しても、利用者のパソコンで古いWebView2 Runtimeが読み込まれている場合は症状が残ります。

反対に、新しいRuntimeがインストールされていても、起動中のアプリは古いRuntimeプロセスを使い続けることがあります。更新後はWebView2環境を作り直すか、アプリを完全に終了して再起動する必要があります。(Microsoft Learn)

WebView2タイトルバーアイコン消失の修正手順

実際に読み込まれたRuntimeのバージョンを確認する

Windowsの「インストールされているアプリ」に表示されるバージョンだけで判断してはいけません。

アプリがFixed Version Runtimeを同梱していたり、Microsoft Edgeのプレビューチャネルを選択していたりすると、システムにインストールされたEvergreen Runtimeとは異なるバージョンを読み込むことがあります。

.NETのWPFまたはWinFormsアプリでは、初期化後に次のようなコードで実際のRuntimeバージョンを記録できます。

await webView2.EnsureCoreWebView2Async();

string runtimeVersion =
    webView2.CoreWebView2.Environment.BrowserVersionString;

System.Diagnostics.Debug.WriteLine(
    $"WebView2 Runtime: {runtimeVersion}");

BrowserVersionStringでは、現在のWebView2環境が使用しているブラウザまたはRuntimeのバージョンを取得できます。Stable以外のチャネルでは、チャネル名が付く場合もあります。(Microsoft Learn)

今回の修正を確認する基準は、数値部分が次のバージョン以上であることです。

152.0.4181.0

コードを変更できない場合は、タスクマネージャーからWebView2の子プロセスを探し、「ファイルの場所を開く」を選択します。実行ファイルが保存されているフォルダー名から、利用中のRuntimeバージョンを確認できます。(Microsoft Learn)

SDK 1.0.4181-prereleaseへ更新する

Window Controls OverlayのExperimental APIを使って、修正を最初に確認できる構成へそろえる場合は、SDKを1.0.4181-prereleaseへ更新します。

.NET CLIを使う場合は、プロジェクトフォルダーで次を実行します。

dotnet add package Microsoft.Web.WebView2 --version 1.0.4181-prerelease

プロジェクトファイルを直接編集する場合は、次のように指定します。

<ItemGroup>
  <PackageReference
    Include="Microsoft.Web.WebView2"
    Version="1.0.4181-prerelease" />
</ItemGroup>

SDK 1.0.4181-prereleaseで完全なAPI互換性を確保するには、Runtime 152.0.4181.0以降が必要とされています。(Microsoft Learn)

なお、2026年8月28日には後続のRelease SDK 1.0.4191.47もNuGetで公開されています。通常の本番開発では新しいRelease SDKが候補になりますが、Window Controls OverlayのExperimental APIを参照しているプロジェクトでは、必要なAPIが同じ形で利用できるかを確認してから切り替えてください。SDKの最新版と、今回の表示修正が最初に公開されたPrerelease SDKは、同じ意味ではありません。(NuGet Gallery)

WebView2 Runtimeを更新する

Runtimeの更新方法は、アプリがEvergreen方式かFixed Version方式かによって異なります。

利用方式更新方法
Evergreen Runtime自動更新、Evergreen Bootstrapper、Standalone Installerなどで最新版へ更新する
Fixed Version Runtimeアプリに同梱しているRuntime一式を修正版へ入れ替えて再配布する
Preview RuntimeEdge Beta、Dev、Canaryなどを開発・検証端末で利用する

Evergreen方式は、多くのアプリで推奨される方式です。Runtimeが共有され、自動的に更新されます。一方、Fixed Version方式ではRuntimeが自動更新されないため、開発者が修正版へ差し替えてアプリと一緒に再配布しなければなりません。(Microsoft Learn)

Microsoft Edgeブラウザが最新版でも、WebView2 Runtimeまで必ず最新版とは限りません。Microsoft EdgeとWebView2 Runtimeには別々の更新ポリシーがあり、企業管理端末では管理者がWebView2 Runtimeの更新を抑止していることもあります。(Microsoft Learn)

Preview Runtimeで修正を検証する

修正が含まれるプレビューチャネルを検証端末で優先的に読み込ませる場合は、WebView2を初期化する前にチャネル検索順を変更します。

PowerShellから一時的に設定する例は次のとおりです。

$env:WEBVIEW2_CHANNEL_SEARCH_KIND = "1"
.\YourApp.exe

この設定では、インストールされているプレビューチャネルを優先して検索します。設定はWebView2の初期化前に行う必要があります。端末全体の環境変数として設定すると、その端末上のほかのWebView2アプリにも影響するため、開発用のPowerShellセッションや専用検証端末だけで使用してください。(Microsoft Learn)

チャネル検索順を変更した後も、必ずBrowserVersionStringを確認します。プレビューチャネルをインストールしただけでは、目的のRuntimeが実際に選択されたとは限りません。

クリーンビルドしてアプリを再起動する

SDKを更新したら、古いDLLや生成済みファイルを残さないようにクリーンビルドします。

dotnet clean
dotnet restore
dotnet build

Visual Studioを使っている場合は、次の順で実行します。

  1. ソリューションのクリーン
  2. NuGetパッケージの復元
  3. ソリューションのリビルド
  4. アプリを完全終了
  5. タスクマネージャーでWebView2関連プロセスが終了したことを確認
  6. アプリを再起動
  7. 実際のRuntimeバージョンを再確認

Microsoftは、WebView2 SDKのNuGetパッケージを更新した後にアプリを再コンパイルするよう案内しています。(Microsoft Learn)

また、Evergreen Runtimeの新しいバージョンがバックグラウンドでインストールされても、起動中のアプリは従来のRuntimeを使い続ける場合があります。常時起動するアプリでは、NewBrowserVersionAvailableイベントを利用して再起動を促す設計も検討します。(Microsoft Learn)

修正後に確認するテスト項目

キャプションボタンの記号が表示されたことだけで検証を終えると、最大化やDPI変更時の問題を見落とすことがあります。

テスト項目確認内容
通常表示最小化・最大化・閉じる記号がすべて見える
最大化表示最大化が「元に戻す」表示へ正しく切り替わる
ホバー表示背景色と記号のコントラストが保たれる
クリックボタン全体で操作できる
ライト・ダーク切り替えテーマ変更後も記号が見える
DPI変更100%、125%、150%、200%で崩れない
複数モニターDPIの異なるモニター間で移動しても表示される
ウィンドウサイズ変更ボタンとWebコンテンツが重ならない
キーボード操作Alt+F4など標準操作が機能する
スクリーンリーダーボタンの役割が正しく通知される

Runtime 152では、今回のキャプショングリフ以外にも、最小化・最大化・閉じるボタンのちらつきや、カスタムタイトルバー上端からウィンドウをドラッグできない問題が修正されています。タイトルバー周辺はまとめて回帰テストしておくと効率的です。(Microsoft Learn)

本番環境ではPrerelease SDKを無条件に配布しない

1.0.4181-prereleaseは、名前のとおりPrerelease SDKです。本番環境へ反映するときは、開発・検証と本番の目的を分けて判断します。

環境推奨する考え方
開発環境SDK 1.0.4181-prereleaseとRuntime 152以降で修正を確認する
結合テスト環境StableとPreviewの両方で表示や操作を比較する
一般的な本番環境互換性を確認したRelease SDKと最新Evergreen Runtimeを使う
更新を厳密に管理する本番環境修正版Fixed Version Runtimeをアプリに同梱して配布する
Experimental APIを使うアプリPrerelease依存を明示し、限定配布と十分な回帰テストを行う

Microsoft EdgeのBeta、Dev、CanaryチャネルをWebView2のバックエンドとして使う方法は、将来の変更を検証するためのものです。通常の本番アプリではWebView2 Runtimeを使用し、Edgeのプレビューチャネルを利用者向けの恒久的な依存先にしないようにします。(Microsoft Learn)

本番配布では、次の3点をリリース判定条件にすると安全です。

  • 実際に読み込まれたRuntimeが修正版以上である
  • 利用中のSDKで必要なWCO APIがコンパイル・動作する
  • ダークテーマ、DPI変更、最大化、複数モニターで回帰テストを通過している

すぐにRuntimeを更新できない場合の一時回避策

企業端末の更新制御などによりRuntimeをすぐ更新できない場合は、修正版が配布されるまでタイトルバーのデザインを一時的に変更します。

WCOの背景色を明るくする

今回の不具合は暗い背景上で発生するため、タイトルバーを明るい背景色へ変更すると回避できる可能性があります。

ただし、白に近い色へ変えるだけでなく、通常時、ホバー時、非アクティブ時の記号が読み取れることを実機で確認してください。

Window Controls Overlayを一時的に無効化する

業務アプリなどで閉じるボタンの視認性が最優先される場合は、WCOを無効化し、Windows標準のタイトルバーへ戻す方法が確実です。

デザイン上の統一感は下がりますが、利用者がウィンドウを閉じられない、最大化できないと誤認するリスクを減らせます。

独自の閉じるボタンを安易に追加しない

不具合を隠すためにHTMLやネイティブUIで最小化・最大化・閉じるボタンを急造すると、次の問題が起きやすくなります。

  • Windows標準のヒットテストと競合する
  • 最大化時の余白がずれる
  • 高DPI環境でクリック領域がずれる
  • キーボードや支援技術から操作しにくくなる
  • 本来のWCOボタンと二重表示になる

一時回避では、独自ボタンを追加するより、背景色の変更か標準タイトルバーへの切り替えを優先した方が安全です。

更新しても直らない場合の確認ポイント

状況考えられる原因対処
SDKを更新したが直らないRuntimeが古いBrowserVersionStringを確認する
Runtimeを更新したのに古い版が表示されるアプリやWebView2プロセスが継続している完全終了して再起動する
特定の端末だけ直らない更新ポリシー、オフライン、Fixed Version利用配布方式と管理ポリシーを確認する
Previewを入れたのにStableが使われるチャネル検索順が既定のまま初期化前に検索順を変更する
Runtime 152以降でもアプリアイコンがない今回とは別のアイコン設定問題EXEリソースやマニフェストを確認する
ボタンの上だけクリックできないHTML要素がWCO領域と重なっているタイトルバー領域の配置を修正する
記号は見えるがちらつく別の描画問題または古いプロセス実バージョンと再起動状態を再確認する

WCOのボタンはHTMLコンテンツより上に配置され、直下の要素へのマウス操作を遮ります。タイトルバー右上にメニューや検索ボックスなどを置いている場合は、WCOの占有領域と重ならないようにレイアウトを調整してください。(Microsoft Learn)

問題が再現し続ける場合は、次の情報をそろえて最小構成で再現できるようにします。

  • SDKのバージョン
  • BrowserVersionStringの出力
  • Evergreen、Fixed、Previewのどれを使用しているか
  • WindowsのバージョンとOSビルド
  • WCOに設定した背景色
  • 通常表示、最大化、ホバー時のスクリーンショット
  • ライトテーマとダークテーマの再現結果
  • 再現用の最小コード

WebView2タイトルバーの問題を直すために行うこと

WebView2の暗いタイトルバーで最小化・最大化・閉じる記号が見えない場合は、CSSやアイコン画像を変更する前に、実際に読み込まれたWebView2 Runtimeを確認します。

修正が最初に公開された基準は、Preview Runtime 152.0.4181.0です。WCOのPrerelease APIを使った検証ではSDK 1.0.4181-prereleaseと組み合わせ、再ビルド後にアプリを完全再起動します。

本番環境では、利用しているAPIとの互換性を確認したRelease SDKと最新のEvergreen Runtimeを基本とし、Fixed Versionを使っている場合は同梱Runtimeを明示的に更新してください。最後にダークテーマ、最大化、DPI変更、複数モニターで回帰テストを行えば、更新しただけで終わらず、利用者の環境でも修正が反映されたことを確認できます。

この記事を書いた人

実務の現場で詰まりがちなポイントを地図にするITブログ「IT trip」を運営。Windows/Office(Teams・Excel)からSQL、サーバ運用、ガジェットまで、再現性のある手順と“なぜそうなるか”を丁寧に解説します。読んだらすぐ試せること、そして迷った人の次の一歩が見えることを大切にしています。

コメント

コメントする

目次