2016-09-11 12 views
2

SplitViewとCommandBarを使用すると、CommandBarをPage.BottomAppBarに配置しますが、CommandBarはSplitView Paneと重なっています。そこでCommandBarをページのコンテンツに移動します(Like:Page command bar overlaps Splitview Pane)。それは働いている。SplitviewペインとページCommandBarとキーボードが重複しています

しかし、新しい質問があります。キーボードが表示されているページでは、キーボードがCommandBarと重なっています。キーボードが表示されているときにCommandBarを表示したいのですがどうすればいいですか?

+0

[mcve]を表示できますか? – tversteeg

答えて

3

私はここに作業場を与えることができます、多分少しダフィーですが、あなたの問題を解決することができます。 Page.BottomAppBar中のCommandBar以来

は、ソフトウェアキーボードが表示されているが、それはSplitViewペインに重なったときに、私たちはGridの内容にCommandBarを保つが、このCommandBarのコピーを作成し、Page.BottomAppBarにそれを置くことができるHindenとなりません、一方で、それはこのような、たとえば、最初に崩壊します

<Page.BottomAppBar> 
    <CommandBar x:Name="AppCommandBarCopy" Visibility="Collapsed"> 
     <CommandBar.PrimaryCommands> 
      <AppBarButton Name="SaveCopy" 
          Icon="Save" 
          Label="Save"></AppBarButton> 
      <AppBarButton Name="ClearCopy" 
          Icon="ClearSelection" 
          Label="Clear"></AppBarButton> 
     </CommandBar.PrimaryCommands> 
    </CommandBar> 
</Page.BottomAppBar> 

ソフトウェアキーボードは、キーボードが表示されている場合、このコピーを表示し、表示されているか、いない場合は、コードの後ろに、我々は検出することができます。そうでない場合は、このコピーを非表示にしてください(例:

public SplitViewCommandBarKeyboard() 
{ 
    this.InitializeComponent(); 
    InputPane.GetForCurrentView().Showing += OnKeyboardShowing; 
    InputPane.GetForCurrentView().Hiding += OnKeyboardHidding; 
} 

private void OnKeyboardHidding(InputPane sender, InputPaneVisibilityEventArgs args) 
{ 
    AppCommandBarCopy.Visibility = Visibility.Collapsed; 
} 

private void OnKeyboardShowing(InputPane sender, InputPaneVisibilityEventArgs args) 
{ 
    AppCommandBarCopy.Visibility = Visibility.Visible; 
} 
+0

はい、あなたの問題を解決することができます。ありがとうございます。 –

+0

@LabanLiaoL、よろしくお願いします!したがって、これが許容できる答えであれば、これを答えにしてください。 –

関連する問題