Visual Studio は、WinUI と Windows App SDK を使用して Windows アプリをビルドする場合に推奨される IDE です。 これは、XAML ベースのアプリ開発用に構築された Windows プラットフォームとツールとの緊密な統合を提供します。
Windowsアプリ開発者向けの主な機能は次のとおりです。
- XAML Hot Reload — アプリの実行中に XAML マークアップを変更し、再起動せずにすぐに変更が適用されるのを確認します
- XAML ライブ ビジュアル ツリー - 実行中のアプリのランタイム ビジュアル ツリーを調べて、レイアウトの問題をデバッグし、要素階層を理解します
- XAML および C#/C++ 用の IntelliSense - マークアップとコードビハインドの両方について、コード補完、クイック ヒント、およびエラーの強調表示を取得します
- 統合デバッグ - XAML とコードにブレークポイントを設定し、データ バインディングを検査し、UI レンダリングの問題を診断する
開始するには、 Windows アプリの開発の開始を参照してください。
WinUI project テンプレート
Visual Studioには、WinUI アプリをすばやく作成するのに役立つプロジェクト テンプレートが含まれています。 検索するには、File>New>Project を開き、プロジェクトの種類のドロップダウンから WinUI でフィルターをかけるか、WinUI を検索します。
WinUI 空のアプリ (パッケージ化)
WinUI ベースの UI を使用して、C# (.NET) または C++ (Win32) でデスクトップ アプリを作成します。プロジェクトは 、Microsoft.UI.Xaml.Window から派生した 1 つのウィンドウで始まり、独自のコントロールとページを追加できます。 これは、ほとんどの新しいアプリに推奨される開始点です。 チュートリアルについては、「start developing Windows appsを参照してください。
空のアプリ (WAP Projectでパッケージ化)
上記の WinUI 空のアプリ (パッケージ化) テンプレートと同じですが、ソリューションに別の Windows アプリケーション パッケージ プロジェクト を追加します。 このprojectでは、配布用の MSIX パッケージへのアプリのビルドが処理されます。 より簡単なセットアップを希望する場合は、代わりに single-project MSIX を使用して、個別のパッケージ化projectを維持しないようにすることができます。
コンポーネント テンプレートとテスト テンプレート
これらのテンプレートは、WinUI アプリと共に動作するライブラリとテスト プロジェクトを作成します。
| テンプレート | Language | 説明 |
|---|---|---|
| クラス ライブラリ | C# | WinUI アプリ間でコードを共有するための.NET クラス ライブラリ (DLL)。 |
| Windows Runtime コンポーネント | C++ | Windows Runtime コンポーネントプログラミング言語に関係なく、WinUI ベースの UI を使用するすべてのアプリで使用できる C++/WinRT で記述されています。 |
| 単体テスト アプリ | C# と C++ | アプリに対して自動テストを記述して実行するための MSTest project。 |
WinUI 項目テンプレート
項目テンプレートを使用すると、既存の WinUI projectに新しいファイルを追加できます。 Solution Explorer でプロジェクトを右クリックし、Add>New Item を選択し、 WinUI タブを選択します。
| テンプレート | Language | 説明 |
|---|---|---|
| 空白ページ | C# と C++ | Microsoft.UI.Xaml.Controls.Page クラスから派生した新しいページを定義する XAML ファイルとコード ファイルを追加します。 |
| 空白のウィンドウ | C# と C++ | Microsoft.UI.Xaml.Window クラスから派生した新しいウィンドウを定義する XAML ファイルとコード ファイルを追加します。 |
| リソース ディクショナリ | C# と C++ | XAML リソースの空のキー付きコレクションを追加します。 詳細については、「 ResourceDictionary および XAML リソース参照」を参照してください。 |
| リソース ファイル (.resw) | C# と C++ | アプリの文字列と条件付きリソースを格納するためのファイルを追加します。 この項目を使用すると、アプリのローカライズに役立ちます。 詳細については、「 UI およびアプリ パッケージ マニフェストの文字列をローカライズする」を参照してください。 |
| テンプレート化されたコントロール | C# と C++ | 既定のスタイルでテンプレート 化されたコントロールを作成するためのコード ファイルを追加します。 テンプレート 化されたコントロールは、 Microsoft.UI.Xaml.Controls.Control クラスから派生します。この項目テンプレートの使用方法を示すチュートリアルについては、「 XAML テンプレート コントロールの構築」を参照してください。 テンプレート化されたコントロールの詳細については、「 カスタム XAML コントロール」を参照してください。 |
| ユーザー コントロール | C# と C++ | Microsoft.UI.Xaml.Controls.UserControl クラスから派生するユーザー コントロールを作成するための XAML ファイルとコード ファイルを追加します。 通常、ユーザー コントロールは関連する既存のコントロールをカプセル化し、独自のロジックを提供します。ユーザー コントロールの詳細については、「 カスタム XAML コントロール」を参照してください。 |
こちらも参照ください
Windows developer