次の方法で共有


UWP から Windows App SDK への移行

アプリを UWP から Windows アプリ SDK に移行する場合、プラットフォーム コードの大部分は変更なしでかまいませんが、UI コードは名前空間をいくつか変更する必要があるかもしれません。

Note

ユニバーサル Windows プラットフォーム (UWP) で現在サポートされている機能が十分なのであれば、Windows UI ライブラリ (WinUI) 2Windows SDK では UWP プロジェクトの種類がサポートされているため、プロジェクトを移行する必要はありません。

デスクトップ アプリと UWP アプリの違いによりコードを部分的に調整する必要がある場合でも、ほとんどのアプリを移行するのに必要な手順はわずかです。

  1. 最初の WinUI 3 (Windows アプリ SDK) プロジェクトのパッケージ化されたデスクトップ プロジェクトを作成します (これは、アプリの既存のソリューションに追加される可能性があります)。
  2. XAML/UI コードをコピーします。 多くの場合、単に名前空間を変更できます (たとえば、Windows.UI.* から Microsoft.UI.*)。
  3. アプリのロジック コードをコピーします。 一部の API では、PopupPickerSecondaryTile などの調整が必要です。

UWP から WinUI 3 への移行時にサポートされる機能を特に参照してください。その記事では、WinUI 3 と Windows アプリ SDKでまだサポートされていない機能について説明しています。 アプリでこれらの機能やライブラリが必要な場合は、移行の延期を検討してください。

Note

UWP ソース コードが C++/CX で記述されている場合は、そのコードを移植する必要があります (「C++/CX から C++/WinRT への移行」を参照してください)。

.NET アップグレード アシスタント ツールを使用した移行

UWP アプリを Windows アプリ SDK および WinUI 3 に移行するためのさらに手順として、.NET アップグレード アシスタントを活用し、C# UWP アプリの移行のサポートを追加しました。 UWP サポートにより、移行プロセスの多くが自動化されます。 詳細については、「.NET アップグレード アシスタントを使用して UWP から Windows アプリ SDK に移行する」を参照してください。

このセクションのトピック

トピック 説明
全体的な移行戦略 移行プロセスに取り組む際の考慮事項と戦略、および移行用の開発環境を設定する方法。
Windows App SDK への UWP 機能のマッピング このトピックでは、UWP と Windows App SDK に表示されるさまざまな形式の主要な機能領域を比較します。
サポート内容 UWP アプリの移行を今すぐ試みる必要があるかどうかを評価するために、WinUI 3 Desktop で現在使用できる機能について説明します。
UWP API とライブラリの Windows App SDK へのマッピング このトピックでは、UWP API およびライブラリとそれに対応する Windows App SDK とのマッピングについて説明します。
機能領域ガイド 特定の機能領域に 1 つずつ焦点を当てて説明する、一連の移行ガイダンスのトピック。
ケース スタディ 1—PhotoLab (C#) このトピックは、C# UWP PhotoLab サンプル アプリを取得して、それを Windows App SDK に移行するケース スタディです。
ケース スタディ 2—フォト エディター (C++/WinRT) このトピックは、C++/WinRT UWP Photo Editor サンプル アプリを取得し、それを Windows App SDK に移行するというケース スタディです。
その他の移行ガイダンス このトピックには、機能領域ガイドの機能領域に分類されていない追加の移行ガイダンスが含まれています。
.NET アップグレード アシスタントを使用して UWP から Windows アプリ SDK に移行する .NET アップグレード アシスタントは、C# UWP アプリを、Windows アプリ SDK を使用する Windows UI ライブラリ (WinUI) 3 アプリに移行するのに役立つコマンド ライン ツールです。