1

我正在制作 UAP Windows 10 应用程序。就像来自 Microsoft 的应用程序新闻一样,我正在尝试将 CommandBar 放在桌面视图的页面顶部,以及移动视图的页面底部。

我怎么能这样做?我想我有一个独立<CommandBar xxx>的空<Page.TopAppBar><Page.BottomAppBar>。并且根据视图的大小,我将 CommandBar 附加到 TopAppBar 或 BottomAppBar...?

有想法?谢谢。

4

1 回答 1

0

您可以使用 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

于 2015-11-05T16:03:11.433 回答