web-dev-qa-db-ja.com

通常の(ストア以外の)Win32 .NETアプリケーションからWindows.UI名前空間を使用するにはどうすればよいですか?

質問は基本的に関連しています 通常の.Netアプリケーションからトースト通知を使用することは可能ですか?

通常の(ストア以外の)Win32 .NETアプリケーション(コンソール、WinForms、WPF)からWindows.UI名前空間を使用するにはどうすればよいですか?

23
wollnyst

Windows.UI名前空間の一部を含む、特定のWinRTクラスをデスクトップアプリから使用できます。トースト通知APIはそのような例の1つであり、Windowsストアアプリとデスクトップアプリの両方で使用できます。 APIリファレンスセクションの各クラスページには、APIがWindowsストアアプリとデスクトップアプリのどちらに適用されるかが示されています( トーストの例 )。 デスクトップアプリからトースト通知APIを使用するサンプル MSDNで提供されています。

MSDNには デスクトップアプリで使用できるWinRTクラスの完全なリスト が含まれています。

編集:

WinRT APIへの参照を追加する機能は、C#デスクトップアプリではデフォルトでオフになっています。プロジェクトは、特にWindows8プラットフォームをターゲットにする必要があります。 WinRT API(Windows.winmdアセンブリ)への参照を追加するには、プロジェクトファイルに以下を追加します。

<PropertyGroup>
    <TargetPlatformVersion>8.0</TargetPlatformVersion>
</PropertyGroup>

これをプロジェクトに追加すると、[参照マネージャー]ダイアログに[Windows]タブが表示され、Windowsアセンブリを追加できます。詳細については、この MSDNの記事 の「コアサブグループ」を参照してください。

32
Nathan Kuchta