Metro Style App

Release Preview における GridView の問題点 (2)

Release Preview 上で Visual Studio 2012 RC のテンプレートを使って生成したプロジェクトに、GridView や ListView のマージンに関する問題がある事がわかりましたので、解決方法について検討してみたいと思います。 問題点は GridView の右側、ListView …

Release Preview における GridView の問題点 (1)

Consumer Preview 上で Visual Studio 11 Beta のテンプレートで生成したプロジェクトを動作させた場合 GridView や ListView の動作に問題がありました。 前回、Release Preview 上で Visual Studio 2012 RC のテンプレートで生成したプロジェクトを使って…

GridView の問題点について

※この記事では問題が解決しているように書かれていますが、まだ問題点がある事がわかりました。以下の記事を参照してください。 Release Preview における GridView の問題点 (1) - rebuild 以前から、何度か Visual Studio 11 Beta のテンプレートで生成し…

適切なマージンを持った GridView のスタイル定義 (3)

※Release Preview での状況は以下の記事を参照してください。 Release Preview における GridView の問題点 (1) - rebuild 2回にわたって GridView のスタイル定義について書きましたが、最後に ListView も含めて必要な作業をまとめておきます。 必要になる…

適切なマージンを持った GridView のスタイル定義 (2)

※Release Preview での状況は以下の記事を参照してください。 Release Preview における GridView の問題点 (1) - rebuild 前回スタイル定義を行う事で適切なマージンを持った GridView が動作するようにしましたが、ポートレート表示においてマージンが適切…

適切なマージンを持った GridView のスタイル定義 (1)

※Release Preview での状況は以下の記事を参照してください。 Release Preview における GridView の問題点 (1) - rebuild 以前(GridView の仮想化 - rebuild)書いた通り、現状の Visual Studio 11 Beta でテンプレートを使ってプロジェクトを作成した場合…

GridView の仮想化

※Release Preview での状況は以下の記事を参照してください。 Release Preview における GridView の問題点 (1) - rebuild 現在提供されている Visual Studio 11 Beta で“グリッド アプリケーション”や“分割アプリケーション”のテンプレートを使ってアプリを…

文字列の多言語化

Metro スタイルアプリで表示文字列を多言語化する方法について試してみたいと思います。 今回は“新しいアプリケーション”のテンプレートを使い、画面の中央に表示させた文字列を多言語化します。 多言語化前の画面は以下のようになります。 <Grid Background="{StaticResource ApplicationPageBackgroundBrush}"> <StackPanel HorizontalAlignment="Center" VerticalAlignment="Center" > <TextBlock Text="text1" FontSize="48"/> </textblock></stackpanel></grid>

非同期メソッド呼び出し後のスレッドについて

Metro スタイルアプリを作成する場合、時間がかかる処理は全て非同期メソッドを呼び出す事になります。 UI スレッドから、await を指定して非同期メソッドを呼び出した場合、非同期メソッド内の処理は別スレッドで処理され、UI スレッドをブロックしないよう…

ローミングとトースト

Metro スタイルアプリには、同じ Microsoft アカウント(Windows Live ID)でログオンしてアプリを使った時にデータを同期させるローミング機能があります。 この機能を使って複数マシンでデータを同期させてみたいと思います。 また、画面上の通知を行うト…

Metroスタイルアプリのリモートデバッグ

開発用のマシンの他にタブレット端末等を用意してリモートデバッグを行ってみたいと思います。 実行マシンの設定 まずアプリを実行するマシンにツールをインストールする必要があります。 Visual Studio 11 Beta 用にもツールが用意されていますのでダウンロ…

HTTP通信と検索機能

今回はHTTP通信、検索等の機能を使ったサンプルを作成してみます。 HTTP通信用のサーバーは ATND の イベントサーチAPI(ATND BETA)を使わせてもらいます。 ATND API リファレンス サンプルの仕様 サンプルは“分割アプリケーション”のテンプレートを元に作…

ファイル一覧表示

Metro スタイルアプリでは自由にファイルアクセスはできませんが、ピクチャフォルダー等はアクセスできます。 アクセスできるフォルダーに関してはフォルダーやファイルの一覧も取得できますので、一覧を取得して表示してみたいと思います。 フォルダー/ファ…

GridView/ListViewの順序入れ替え

GridView や ListView には、表示している項目の順序を入れ替えられるようにする機能が用意されています。 この機能を使って、実際に項目入れ替えを行ってみたいと思います。 今回は“分割アプリケーション”のテンプレートの先頭画面に機能追加をしていきます…

共有ターゲット

Metro Style App では、共有コントラクトを使ってアプリ間でデータを受け渡す事ができます。 以前、共有ソースとしてデータを渡す方法について試しましたので、今回は共有ターゲットとしてデータを受け取る側について試してみたいと思います。 共有ターゲッ…

バックグラウンドでの音楽再生

Metro Style App は表示されている時だけ動作していて、他のアプリが表示されて非表示になってしまうと動作が中断されてしまいます。 ビデオ再生などは非表示状態では見えないので中断されても問題ないですが、音楽の場合は非表示になっても再生していて欲し…

テンプレートの選択

GridView や ListView 等に項目を表示する時にどのように表示するかテンプレートで指定する事ができます(ItemTemplate)。 一般的にはコントロールに対して一つのテンプレートを指定しますが、何らかの情報を元にテンプレートを切り替えて適用させる事がで…

IPアドレスの取得

Metro Style App でアプリが実行されているマシンのIPアドレスを取得してみます。 IPアドレスは Windows.Networking.Connectivity.NetworkInformation.GetHostNames() で取得できる HostName に含まれています。 複数の HostName が返ってきますが、このうち…

ファイルの種類の関連付けとプロトコル

Metro Style App では、拡張子を登録して関連付けによる起動を行ったり、独自プロトコルを登録して URL による情報の受け渡しを行う事ができます。 ファイルや URL を指定して実行する処理は、Launcher クラスの LaunchFileAsync や LaunchUriAsync を使う事…

関連付けによるアプリ実行と共有

前回作成した画像ファイルをリスト表示するアプリに、関連付けされたアプリを実行する機能と共有チャームによるファイル共有機能を追加してみたいと思います。 関連付けされたアプリの実行 関連付けされたファイルの実行は、StorageFile を渡して Launcher.L…

ファイルの検索と情報の取得

Metro Style App では、デスクトップアプリのように自由にファイルアクセスはできません。 アクセスできるのはアプリ毎に割り当てられたローカルフォルダーと、ドキュメント、ピクチャなどのライブラリフォルダーに限定されます。 アクセスできるフォルダー…

UDP通信 (2)

前回作成したサーバーに対して送信を行う Metro Style App を作成します。 機能はデスクトップアプリ版と同じです。 デスクトップ版で使用していた UdpClient クラスは使えませんので DatagramSocket クラスを使用します。 MessageReceived イベントに受信し…

UDP通信 (1)

Metro Style App でLAN上のサーバーと通信する方法について調べてみました。 今回調べたのは UDP での通信についてです。 まずは、確認用にデスクトップアプリで UDP 通信を行うクライアント/サーバーを作成します。 最初に作成するのはサーバーです。 UDP …

デコーダー/エンコーダーの種類

使用できるデコーダー/エンコーダーを列挙するメソッドがありますので、全て列挙させてどのような種類があるのか調べてみました。 BitmapDecoder は GetDecoderInformationEnumerator、BitmapEncoder は GetEncoderInformationEnumerator を使って列挙できま…

画像の表示 (補足)

昨日の内容の補足です。 直接 BitmapImage のソースとして設定して読み込み可能な画像は、GIF、JPEG、PNG、TIFF、BMP などがあります(実際に読み込んで表示できる事を確認した物)。 それ以外に、BitmapDecoder の説明を見ると、ICO や JPEG-XR のデコーダ…

画像の表示

画像ファイルを選択して表示する機能を作成してみます。単純に表示するだけではなく、大きな画像は拡大・縮小して表示できるようにします。 まず画面を作成します。 画面上部にファイル選択を実行するためのボタンを配置します。 その下に画像を表示するため…

ピクセル数のスケーリング (2)

Consumer Preview が公開されましたので、スケーリングについて再度確認してみました。 まず、スケーリングに関するサンプル "Scaling according to DPI sample" が公開されていますので、これをシミュレーターで実行してみました。 シミュレーターの解像度…

ピクセル数のスケーリング (1)

Metro Style アプリでは画素密度の違うディスプレイに対応するために、スケーリングを考慮する必要があります(100%、140%、180%の3種類)。 スケーリングに関してはガイドライン(http://msdn.microsoft.com/en-us/library/windows/apps/hh465362.aspx)が…

FlipView を使ってみる

Windows Developer Preview には Visual Studio も用意されていますので、サンプルを作って Metro Style アプリの機能を調べてみたいと思います。 最初は、新しく追加されたコントロールの中から FlipView を触ってみます。 FlipView FlipView は複数のコン…

Metro Style アプリの特徴 (5)

ライブタイル Windows Phone と同じようにスタート画面に表示されているタイルの表示をアプリから変更する事ができます。 表示変更に方法は以下の3種類です。 ローカル通知 アプリの実行中にタイルの更新や通知を行います。 スケジュール通知 予めアプリから…