Windows Phone 7の多くのアプリでは、アプリケーションバーはデフォルトで非表示になっており、画面を押したままにするとアプリケーションバーが表示されます。 WP7の多くのアプリケーションがこのような動作をしているので、ApplicationBarでのこの種の動作の組み込みサポートがあり、それをどうやって使うのですか?
回答:
回答№1は6あなたはGestureServiceを ツールキット を検出する Hold
イベント。
例えば。
あなたがこのxamlをページに持っていたなら、
<TextBlock TextWrapping="Wrap" Text="lorem ipsum ...">
<toolkit:GestureService.GestureListener>
<toolkit:GestureListener Hold="TapAndHold" />
</toolkit:GestureService.GestureListener>
</TextBlock>
イベントハンドラの場合は次のようになります。
private void TapAndHold(object sender, GestureEventArgs e)
{
this.ApplicationBar.IsVisible = !this.ApplicationBar.IsVisible;
}
テキストブロック上のどこかを押し下げておくと、ApplicationBarの表示が切り替わります。
ユーザーがページ上の任意の場所をタップして保持している場合に切り替えたい場合は、ジェスチャリスナをページのルートオブジェクトにアタッチすることができます。例えば
<Grid x:Name="LayoutRoot" Background="Transparent">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<toolkit:GestureService.GestureListener>
<toolkit:GestureListener Hold="TapAndHold" />
</toolkit:GestureService.GestureListener>
回答№2の場合は1
現在のApplicationBarプロパティを使用するそれに応じてIsVisibleプロパティを切り替えて、ApplicationBarの表示/非表示を切り替えます。 ApplicationBarはオペレーティングシステムによって処理されるため、それを表示したり非表示にするアニメーションが処理されます。