繁体   English   中英

Windows Phone应用程序中的多个页面转换取决于目标页面

[英]multiple page transitions in a windows phone application depending on target page

我如何在Windows Phone应用程序中实现多个页面转换,具体取决于我要导航到哪个页面或从哪个页面导航?

例如,我有主页,设置页面和详细信息页面。 当我要进入/离开设置页面时,我希望过渡是可旋转的;当我要/从详细信息页面进入时,我希望过渡是旋转的。

我怎样才能做到这一点?

这篇GeekChamp文章涵盖了您使用Windows Phone Toolkit为页面过渡和其他元素设置动画的所有各种方式...

http://www.geekchamp.com/articles/windows-phone-7-navigation-transitions-step-by-step-guide

在本文结尾处,有一些示例,说明如何基于按钮单击来动态设置动画。

1.定义动画

private void StartTransition()
{
    RotateTransition rotatetransition = new RotateTransition();
    rotatetransition.Mode = RotateTransitionMode.In90Clockwise;

    PhoneApplicationPage phoneApplicationPage =
    (PhoneApplicationPage)(((PhoneApplicationFrame)Application.Current.RootVisual)).Content;

    ITransition transition = rotatetransition.GetTransition(phoneApplicationPage);
    transition.Completed += delegate
    { 
        transition.Stop(); 
    };
    transition.Begin();
}

2.单击按钮调用动画

private void btnRotate_Click(object sender, RoutedEventArgs e)
{
    NavigationService.Navigate(new Uri("/Page2.xaml", UriKind.Relative));
    StartTransition();
}

或基于页面名称导航时

protected override void OnNavigatedFrom(NavigationEventArgs e)
{
    base.OnNavigatedFrom(e);

    if (e.Uri.ToString().Contains("SlidePage"))
    {
        slideAnimation();
    }

    if (e.Uri.ToString().Contains("TurnstilePage"))
    {
        turnstileAnimation();
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM