Blog


アプリに設定を追加するには

SettingsFlyout

Windows8.1からSettingsFlyoutが追加できるようになりました。

プロジェクトを右クリック→追加→新しい項目を選択します。

2

 

Windowsストアの項目からポップアップの設定を選択し、追加を押します。

3

 

呼び出し方はShowメソッドか、ShowIndependentメソッドをよびだします。前者はFlyoutのバックボタンを押した時に設定チャームを表示し、後者は表示しません。

 

設定チャームから呼び出す

チャームの設定の項目から呼び出すこともできます。

App.xaml.cs内のOnLaunchedメソッド内のif(rootFrame==null){}内に以下の文を追加します。

チャームから設定項目を呼び出すと、先ほど作ったコマンドが追加されています。

4




アプリ内検索をするには

SearchBox

Windows8ではチャームから検索を行っていましたがWindows8.1からはSearchBoxというコントロールが登場し、このコントロールを使用することで検索を行います。

ツールボックスからSearchBoxをドラッグアンドドロップします。

 

1

 

FocusOnKeyboardInputをTrueにすることでキーボードから入力をした瞬間にSrearchBoxにフォーカスが入ります。

 

QuerySubmittedイベントを処理することによってどのような検索ワードが入力されたのかを受け取ることができます。

 




SemanticZoomを行うには

SemanticZoomとは

セマンティックズームとは複数項目を表示するListViewやGridView、Hubにおいてピンチイン、ピンチアウトのジェスチャをすることで項目の表示範囲を変えることができる機能のことです。

Windows8でもスタート画面にセマンティックズームが使われています。

ズームイン時

 

13

 

ズームアウト時

14

 

 

SemanticZoomの実装方法

SemanticZoomは、ISemanticZoomInformationインターフェースを実装しているコントロールでないとできません。

WindowsRuntimeでは、ListViewと、GridView、そしてHubが対応しています。

 

SematicZoomコントロール内の

ZoomInViewプロパティ内にズームイン時の表示方法を、

ZoomOutViewプロパティ内にズームアウト時の表示方法を記述します。

 

今回はZoomIn時はGridViewを、ZoomOut時はListViewを表示させるようにしてみましょう。

 

ズームイン時とズームアウト時に同一のコンテンツを表示するためにListViewとGridViewの両方のItemsSourceプロパティに同一のコレクションを指定します。

 

15

 

16




アプリバーにトグルボタンを設置するには

AppBarToggleButton

OnかOffの状態を記憶するトグルボタンをアプリバーに置くことができます。 ツールボックスからアプリバーにAppBarToggleButtonをドラッグアンドドロップします。

12

 

OnかOffかを取得、設定する

OnかOffかを取得または設定するにはIsChecked.Valueで取得できます。

IsChecked自体はnull許容型bool?なのでValueで中身を取り出す必要があります。

 




アプリバーに複数の項目を追加するには

StackPanelを追加する

複数の項目を表示するにはPanelを継承するコントロールの上でないと複数項目を置くことができません。

アプリバーを選択した状態でツールボックスからStackPanelをドラッグアンドドロップします。

9

 

StackPanelのOrientationプロパティをHorizontalにしましょう。

 

あとは同じようにAppBarButtonなどをドラッグアンドドロップすれば複数項目を表示することができます。

10

 

セパレータで区切る

AppBarSeparatorを追加するとそこで項目を視覚的に区切ることが可能です。

11