UWP / C#基于NavView模式更改控件可见性
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UWP / C#基于NavView模式更改控件可见性相关的知识,希望对你有一定的参考价值。
我需要尝试根据NavigationView“PaneDisplaymode”更改StackPanel的可见性
我有一个简单的AppBarButton StackPanel的以下导航视图控件。
我不确定是否有办法引用当前的PanDisplayMode,然后确定StackPanel的可见性?
任何关于此的指导/帮助都会很棒。
<NavigationView IsSettingsVisible="False"
PaneTitle="Menu"
x:Name="NavView"
IsBackButtonVisible="Collapsed"
PaneDisplayMode="Left"
AlwaysShowHeader="True"
SelectionChanged="NavView_SelectionChanged">
<!-- All navigation view Items nested within here -->
<NavigationView.MenuItems>
<StackPanel Orientation="Horizontal" UseLayoutRounding="False" x:Name="AppBarButtons" Tag="AppBarButtonPanel"> <!--Visibility="Binding ControlShit"-->
<AppBarButton Icon="Page2" Margin="0, 2, 1, 0" Tag="New_Sheet" HorizontalAlignment="Center" Width="56.5" Height="56.5" ClickMode="Press" Click="NewFile_ClickAsync"/>
<AppBarButton Icon="OpenFile" Margin="1, 2, 0, 0" Tag="Open_Sheet" HorizontalAlignment="Center" Width="56.5" Height="56.5" ClickMode="Press" Click="OpenFile_Click"/>
<AppBarButton Icon="Save" Margin="1, 2, 0, 0" Tag="Save_Sheet" HorizontalAlignment="Center" Width="56.5" Height="56.5" ClickMode="Press" Click="SaveButton_ClickAsync"/>
<AppBarButton Icon="Setting" Margin="1, 2, 0, 0" Tag="Settings_Page" HorizontalAlignment="Center" Width="56.5" Height="56.5" ClickMode="Press" Click="SettingsButton_Click"/>
<AppBarButton Icon="Calculator" Margin="1, 2, 0, 0" Tag="Calculator_Open" HorizontalAlignment="Center" Width="56.5" Height="56.5" ClickMode="Press" Click="CalcButton_ClickAsync"/>
</StackPanel>
</NavigationView.MenuItems>
答案
您可以使用NavigationView的PaneClosed和PaneOpened事件来更改StackPanel的可见性,另一种方法是使用DisplayModeChanged,您可以对PaneDisplayMode属性使用switch语句并检查它是关闭还是打开,然后更改可见度。
以上是关于UWP / C#基于NavView模式更改控件可见性的主要内容,如果未能解决你的问题,请参考以下文章