UWP から WinUI 3 への移行時にサポートされる内容

WinUI とWindows アプリ SDKは新しいテクノロジであり、UWP と比較すると、サポートされていない機能がいくつかあります。 このトピックでは、移行を試みる前にサポートされる機能について説明します。

UWP 機能 WinUI の状態
背景アクリル DesktopAcrylicController を通じて利用可能です。
バックグラウンド タスク ✅ サポートされています。BackgroundTaskBuilder (1.7 で導入) を参照してください。
ContentDialog ✅ 利用可能。 WinUI 3 の MessageDialog よりも優先されます (HWND 相互運用は必要ありません。代わりに XamlRoot 設定します)。
RichEditBox ✅ 利用可能。
WebView (UWP) ✅ WinUI 3 の置換である WebView2 を使用します。 WebView2 ランタイム (Microsoft Edge を介してほとんどのWindows 10/11 デバイスにプレインストールされている) が必要です。
DataGrid ❌ ファースト パーティ WinUI 3 コントロールはありません。 CommunityToolkit DataGrid は UWP 専用 (バージョン 7.1.0) であり、WinUI 3 に移植されていません。 コミュニティの代替手段: WinUI.TableView。 よりシンプルな表形式データには、GridView レイアウトの ListView を検討してください。
CameraCaptureUI ✅ サポートされています。CameraCaptureUI (1.7 で導入) を参照してください。 代替 API については、「ビデオ キャプチャの使用」を参照してください。
Composition/DirectX 相互運用 ✅ ほとんどのコンポジションおよび描画機能がサポートされています。 「ビジュアル レイヤーを使用して UI を強化する」を参照してください。
Store 経由での配布 ✅ サポートされています
ライブ タイル (Windows 10) ✅ サポートされています
MapControl ✅ サポートされています。MapControl (1.5 で導入) を参照してください。
MediaElementMediaPlayerElement MediaPlayerElementを使用します。これは 1.2 で導入されました。
MSAL ライブラリ ✅ サポートされています
MSIX ✅ サポートされています
シングルインスタンシング ✅ サポートされています
TaskbarManager Api ✅ サポートされています。詳細については、TaskbarManager デスクトップ サンプルを参照してください。
Toast 通知 ✅ サポートされています
Visual Studio App Center 2025 年 3 月 31 日に廃止。 分析と診断の機能は、2027 年 3 月 31 日まで継続されます。Azure Monitor
WebAuthenticationBroker ✅ サポートされています。Microsoft.Security.Authentication.OAuth (1.7 で導入) 参照してください。
最適な起動速度とパフォーマンス ⚠️ 若干のデメリットがあります。パフォーマンスに関する考慮事項を参照してください。
CoreTextServicesManager ️ Windows 11でのみサポートされます
PrintManager ️ Windows 11でサポート (Windows 10 ではまだ使用できません)
CoreWindow と関連 API ❌ 2.0 ではサポートされていません。 同じ機能の一部を備えた代替 API については、「AppWindow」と「HWNDベースの API」を参照してください。
ゲームパッド入力 の仮想キーのサポート ❌2.0 ではサポートされていません。WinUI でのゲームパッドのサポートを参照してください
InkCanvas ⚠️ 試験的のみ (2.0 実験 1 で導入)。 安定した 2.0 チャネルでは使用できません。 InkToolbar は使用できません。 「 既知の制御ギャップ」を参照してください。
シングルアプリ キオスク ❌ 2.0 ではサポートされていません
Xbox と HoloLens ❌ 2.0 ではサポートされていません

パフォーマンスに関する考慮事項

現在、バージョン 2.0 のWindows アプリ SDKでは、WinUI アプリの起動速度、RAM 使用量、インストール サイズは、UWP で見られるよりも大きく、遅くなっています。 この改善に積極的に取り組んでいます。

既知の制御ギャップ

次の UWP コントロールには、Windows アプリ SDK 2.0 の時点で安定した WinUI 3 に相当するものはありません。 このセクションでは、ギャップと使用可能な代替手段の一覧を示します。

UWP コントロールまたは API Status 代替案
InkCanvas 実験段階のみ(2.0 Experimental 1);安定版には含まれません Win2D でのポインター入力処理; サード パーティ製のインク ライブラリ
InkToolbar 該当なし Win2D インク機能と組み合わせたカスタム ツールバー
DataGrid ファースト パーティコントロールなし CommunityToolkit DataGrid は UWP 専用 (v7.1.0) です。WinUI.TableView は WinUI 3 コミュニティの代替手段です
DisplayRequest 該当なし Win32 SetThreadExecutionState API

Note

「実験的」とマークされたコントロールは、Windows アプリ SDK の実験的チャネルで利用できますが、まだ安定版にはなっていません。 試験段階の API は、将来のリリースで変更または削除される可能性があります。 運用アプリケーションでは実験用 API を使用しないでください。

Visual Studio

Visual Studio (および Blend for Visual Studio) の XAML デザイナーの Design タブでは、WinUI 3 プロジェクトは現在サポートされていません (Windows アプリ SDK のバージョン 2.0 以降)。 詳細については、「XAML デザイナーを使用して UI を作成する」を参照してください。 推奨されるランタイム デザイン ワークフローについては、 WinUI 3 の XAML ランタイム デザイン ツールに関する記事を参照してください。

参照