0

パノラマ アイテムが 3 つあるのですが、1 つ目だけにアプリ バーを配置したいと考えています。

そこで、他のパノラマ アイテムのアプリ バーを削除する実装を開始しました。

私がしたことは、イベントを処理し、アプリケーションバーを非表示にすることSelectionChangedに基づいていました:Panorama.SelectedIndex

this.ApplicationBar.IsVisible = this.Panorama.SelectedIndex == 0;

2 番目の項目にスワイプすると、通常のパノラマ アニメーションが機能しなくなり、トランジション アニメーションが表示されなくなり、突然です。

を変更する代わりにIsVisible、同じ結果を試してみました:

  • アプリバーを削除this.ApplicationBar = null
  • 不透明度をゼロに設定this.ApplicationBar.Opacity = 0

興味深いのは、不透明度をたとえば 0.5 に変更してもアニメーションが壊れることです。

私の感じでは、アプリ バーのレイアウト変更イベントがこのパノラマの壊れた動作を生成します。

私はまだ解決策を見つけることができませんでした。

4

1 に答える 1

2

パノラマ全体をスタックパネルに配置します

<StackPanel>
<phone:Panorama Title="my application">
<phone:PanoramaItem Header="first item"/>
<phone:PanoramaItem Header="second item" Tap="OnPanoramaItemTap"/>
</phone:Panorama Title="my application">
</StackPanel>


 private void OnPanoramaItemTap(object sender, System.Windows.Input.GestureEventArgs e)
    {
        ApplicationBar.IsVisible = false;
    }

それは単なるアイデアですが、機能しています。あなたのケースに適していると思います。

于 2013-02-08T15:39:33.167 に答える