UWP页面过渡应用于所有页面的帧

时间:2017-03-29 21:53:47

标签: c# xaml uwp uwp-xaml

我目前有一个UWP页面作为我的主窗口,并定义了围绕其他所有内容的公共菜单/标题包装。

然后我有一个<frame/>

<Frame Name="ContentFrame" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Grid.Row="1"/>

我有大约10个页面Navigate()使用内容框架,但我想添加UWP页面过渡,但不要强制将过渡添加到每个页面(它感觉很乱,并且当我添加新页面时,我不想忘记。)

有没有办法在框架内定义其自身的转换,以便所有子页面都可以转换?

我试过这个,但没有运气

<Frame Name="ContentFrame" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Grid.Row="1">
    <TransitionCollection>
        <NavigationThemeTransition>
            <NavigationThemeTransition.DefaultNavigationTransitionInfo>
                <SlideNavigationTransitionInfo/>
            </NavigationThemeTransition.DefaultNavigationTransitionInfo>
        </NavigationThemeTransition>
    </TransitionCollection>
</Frame>

1 个答案:

答案 0 :(得分:4)

我偶然发现了答案(知识分子):

我错过了Frame.ContentTransitions标签,以便将动画应用于子页面。

<Frame Name="ContentFrame" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Grid.Row="1">
    <Frame.ContentTransitions>
        <TransitionCollection>
            <NavigationThemeTransition>
                <NavigationThemeTransition.DefaultNavigationTransitionInfo>
                    <SlideNavigationTransitionInfo/>
                </NavigationThemeTransition.DefaultNavigationTransitionInfo>
            </NavigationThemeTransition>
        </TransitionCollection>
    </Frame.ContentTransitions>
</Frame>