ダウンロード サンプルファイル (278.2 KB)
ユニバーサルWindowsアプリに適用する
Windows PhoneストアアプリでComponentOne Studioを使うことに成功したので、いよいよ、ユニバーサルアプリで使えるかチャレンジしてみましょう。
新規プロジェクト作成
残念なことに、Visual Studio 2013 Update 2では、Visual Basicでのユニバーサルアプリがサポートされていないので、C#でサンプルを作成してみます。
ユニバーサルアプリでもお勧めのテンプレートは「ハブアプリケーション」になります。
先ほどと同じように不要なページファイルを削除して、SharedにView以外を配置したら、Windowsストアアプリ側とWindows Phoneストアアプリ側のそれぞれにMainPageを追加します。
参照設定への追加
Windowsストアアプリ側でもWindows Phoneストアアプリ側でもツールボックスにC1Chartが表示されるので、デザイナーで開いたMainPage.xamlにドラッグ&ドロップし、配置すれば参照設定も完了します。
XAMLへの定義
WindowsストアアプリとWindows Phoneストアアプリの互換性の高さがすごいのは、ヘッダ部分こそ大きさの相違などがありますが、Gridの2行目に設定するコンテンツ領域に定義するC1Chartの定義は同じXAML定義で良いということです。
<Chart:C1Chart x:Name="Chart" Grid.Row="1"
ChartType="Line" Theme="Office2007Blue" Palette="Metro">
<Chart:C1Chart.Data>
<Chart:ChartData ItemsSource="{Binding HandData}">
<Chart:ChartData.Children>
<Chart:DataSeries Label="X" ValueBinding="{Binding ValueX}"/>
<Chart:DataSeries Label="Y" ValueBinding="{Binding ValueY}"/>
<Chart:DataSeries Label="Z" ValueBinding="{Binding ValueZ}"/>
</Chart:ChartData.Children>
</Chart:ChartData>
</Chart:C1Chart.Data>
<Chart:C1ChartLegend Position="Right" VerticalContentAlignment="Center"/>
</Chart:C1Chart>
エミュレータでの実行確認
View以外はSharedプロジェクトに配置し両方から同一のコードを参照するようにし、Viewについてもヘッダ部分以外は同一、もちろん、MainPage.xaml.csのコードはすべて一緒という状態でビルドして実行した結果は次のようになります。
同一のアプリのように2つのデバイスでグラフ表示されています。それぞれWindowsストア、Windows Phoneストアに登録するときに同一名を指定してAppIDを共通化すれば、ユニバーサルWindowsアプリの機構により、購入状態やローミングデータなどを共有できます。つまり、PC、タブレット、スマートフォンでシームレスな利用が可能になります。
まとめ
WindowsストアアプリとWindows Phoneストアアプリの互換性がうたい文句通りであり、また、ComponentOne Studio for WinRT XAMLの構造がWindows Runtime的な標準準拠性が高ければ「もしかしたら?」という期待から始めましたが、期待以上の結果になったと思いますがいかがだったでしょうか。当然、ツールボックスに出ないといった問題はありますが、根幹にかかわる部分ではないので、ComponentOne StudioでユニバーサルWindowsアプリ対応のコンポーネントが追加されるのも時間の問題かもしれません。
なお、重ね重ねのお願いですがグレープシティ、マイクロソフトともにこの構成の動作保証をしていませんので、その点だけはご理解ください。
この記事は参考になりましたか?
既に会員の方はを行ってください。
- 現役エンジニア直伝! 「現場」で使えるコンポーネント活用術(ComponentOne Studio)連載記事一覧
- この記事の著者
-
初音玲(ハツネアキラ)
国内SIerのSEでパッケージ製品開発を主に行っており、最近は、空間認識や音声認識などを応用した製品を手掛けています。 個人的には、仕事の内容をさらに拡張したHoloLensなどのMRを中心に活動しています。 Microsoft MVP for Windows Development ブログ:http://hatsune.hatenablog.jp/
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア



