我正在制作 UAP Windows 10 应用程序。就像来自 Microsoft 的应用程序新闻一样,我正在尝试将 CommandBar 放在桌面视图的页面顶部,以及移动视图的页面底部。
我怎么能这样做?我想我有一个独立<CommandBar xxx>
的空<Page.TopAppBar>
和<Page.BottomAppBar>
。并且根据视图的大小,我将 CommandBar 附加到 TopAppBar 或 BottomAppBar...?
有想法?谢谢。
我正在制作 UAP Windows 10 应用程序。就像来自 Microsoft 的应用程序新闻一样,我正在尝试将 CommandBar 放在桌面视图的页面顶部,以及移动视图的页面底部。
我怎么能这样做?我想我有一个独立<CommandBar xxx>
的空<Page.TopAppBar>
和<Page.BottomAppBar>
。并且根据视图的大小,我将 CommandBar 附加到 TopAppBar 或 BottomAppBar...?
有想法?谢谢。
您可以使用 VisualState 类来根据屏幕大小调整事物的对齐方式,使用 StateTriggers 属性。这是有关该类的一些文档,包括此处的一些示例代码https://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.xaml.visualstate.statetriggers.aspx
此示例代码演示了使用:https ://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/XamlStateTriggers
简单的实现:
<VisualStateManager.VisualStateGroups>
<VisualStateGroup>
<VisualState>
<VisualState.StateTriggers>
<!--VisualState to be triggered when window width is >=720 effective pixels.-->
<AdaptiveTrigger MinWindowWidth="720" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="myPanel.VerticalAlignment" Value="Bottom" />
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<StackPanel x:Name="myPanel" VerticalAlignment="Top">
<TextBlock Text="This is a block of text for an example. "
Style="{ThemeResource BodyTextBlockStyle}"/>
</StackPanel>
(这就是这个例子,但是根据你的情况改变了值。https://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.xaml.visualstate.statetriggers.aspx)