SkyDrive へ移動ダウンロードしたテンプレートは、『C:\Users\ユーザー名\Documents\Visual Studio 2012\Templates\ProjectTemplates\Visual C#\Windows Store』に保存します。 Windows Store フォルダは最初は存在しないので作成します( 好きな名前のフォルダでも Visual Studio から利用できます )ソースコード表示 仕様 ❶ Page.Resources で XAML 内で利用する文字列を定義 ❷ AppBar を XAML で定義 ❸ ボタンを左側3つ、右側2つ定義 ❹ それぞれのボタンにイベントを定義 ❺ 保存ボタンのイベントで、MessageDialog の利用サンプルを実装 ❻ MessageDialog のイベントを別のソースコードに定義( partial ) ❼ TextResource.cs に、StaticResource 用のクラスを定義 ❽ AutomationProperties を XAML とコードで使用して、ボタンの文字列を動的に変更
<Page.Resources> <local:TextResource x:Key="GlobalText" PageTitle="AppBar テンプレート" /> </Page.Resources>
<TextBlock HorizontalAlignment="Left" Height="61" Margin="76,60,0,0" TextWrapping="Wrap" Text="{Binding Source={StaticResource GlobalText},Path=PageTitle}" VerticalAlignment="Top" Width="1090" FontSize="40" FontWeight="Bold" FontFamily="Meiryo" />
Page.Resources 内で定義している、local:TextResource は、XAML 内でクラスからインスタンスを作成する方法です。作成されたオブジェクトは、XAML 内で(ここでは) GlobalText の名前で参照されて利用されます。
( local は、『xmlns:local="using:LBOX_AppBar"』で定義 )
PageTitle="AppBar テンプレート" の記述では、TextResource クラスに定義されたプロパティ(PageTitle)にデータをセットしています。そして、利用側では Binding によって、オブジェクトの設定済みのプロパティを参照しています。
public class TextResource { public string PageTitle { get; set; } }
AutomationProperties ボタンの文字列は、Style に定義した『StaticResource SaveAppBarButtonStyle』によって決定していますが、もともとのボタンのテキストでは無いので、AutomationProperties 経由で変更します。
<Button x:Name="SaveButton" AutomationProperties.Name="保存" Grid.Column="1" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Style="{StaticResource SaveAppBarButtonStyle}" Click="SaveButton_Click" /> ----------------------------------------------------------------- // ************************************************* // メールボタンをロード時に、表示文字列を変更する // ************************************************* private void MailButton_Loaded(object sender, RoutedEventArgs e) { AutomationProperties.SetName(sender as Button, "メール"); }
|
【Win8 ストアアプリの最新記事】
- C# : HttpClient で Post と Get する汎用 static クラス
- Win8.1 ストアアプリ(JS) : Visual Studio 2013 で Three.js(v65) の WebGLRenderer の動作を確認しました
- WinJS ストア : Three.js を組み込んで、『画像を飛ばす』テンプレート( Bird.js を利用 )
- WinJS ストア : 『背景画像をチェンジする2画面アプリ』のテンプレート
- VS2012ストア(C#) : WebView テンプレート
- VS2012(C#)ストア : ListView Twitter 検索テンプレート
- イラストを背景にして2ページの画面遷移を解りやすくした Windows Store テンプレート
- Twitter API の自分のアプリのトークンを使って投稿するだけの class VS2012_Twitter
- Win8 ストア(C#) / PDF viewer sample (Windows 8.1)
- ストアアプリの TextBox のスクロールバー
- Win8 ストアアプリの、メモリ上にページを残す画面遷移と、前画面のコントロールの参照
- Win8 ストアアプリで、『選択肢を応答するダイアログ』を簡単に使うための MessageBox クラス
- Win8 ストアから Post 投稿
- Win8ストア XAML の AppBarButtonStyle のContent に指定する 16進数 Unicode の取得
- Win8 ストア : UrlEncode と UrlDecode
- Win8 ストア : HttpClient + XDocument で RSS の取得
- Win8 ストア : リストボックス テンプレート
- Win8 ストア : ファイルアクセス テンプレート
- Win8 ストア : ストアブランク テンプレート
- Windows ストアアプリの AppBar を作成してテストする