Windowsストア アプリ(C#のModern UIアプリ)を眺めてみる

Windows8とVisual Studio2012をインストールしたので、WindowsStoreアプリを軽く眺めてみました。


C#で「新しいアプリケーション(XAML)」を作成。


生成されたプロジェクトのプロパティは、「Windows ストアアプリ」という出力の種類となる。


生成されたソリューション。Assetsフォルダには、ロゴなどの画像が保存される。


Commonフォルダには「StandardStyles.xaml」という開発をシンプルにするためのXAMLスタイルファイルが保存されている。



参照しているアセンブリ「.NET for Windows Store apps」のバージョンは.NET4.5となる。


参照先のパスは「C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETCore\v4.5\」となる。特定のDLLではなく、フォルダを参照している。


↑.NETCoreフォルダの中身。



なお、従来のWinFormアプリケーション(.NET4.5)のプロジェクトは次のパスが参照先となる。「C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\Microsoft.CSharp.dll」(必要なDLLを個別に指定する。)


↑.NETFrameworkフォルダの中身。

このようにWindowsストアアプリでは、.NETCoreをコアライブラリとして参照する。



また、参照設定ではWindows8.0も参照している。こちらは.NET FrameworkではなくWindows Kitsという扱いとなっている。

「C:\Program Files (x86)\Windows Kits\8.0\References\CommonConfiguration\Neutral\」
上記フォルダにある「Windows.winmd(1403KB)」をILSpyで見てみると次のように表示される。

Windows.winmdの中身は、Windows.*から始まる名前空間で構成されるWinRTであると表示される。



そして、

  • メイン制御プログラムとなるApp.xaml(基底クラス:Windows.UI.Xaml.Application)
  • メインページとなるMainPage.xaml(基底クラス:Windows.UI.Xaml.Controls.Page)

で構成される。



「Package.appxmanifest」ファイルにはModernUIに関する設定を記載する。XML形式であるが、GUIにて設定が可能。



「プロジェクト名_TemporaryKey.pfx」ファイルは、Personal Information Exchange (.pfx)、証明書用のファイルとなる。

ちなみに、App.configは生成されません。MetroUIではApp.configはサポートされないようです。

以上、Metroスタイルアプリの空ソリューションをざっくりと眺めてみたメモです。