WP7应用开发笔记(10) 导航

本文深入探讨了基于Silverlight页面模型的WindowsPhone应用程序导航机制,包括如何使用NavigationService类实现页面间的导航,以及如何通过设置UriMapper注册页面别名来简化导航过程。文章还详细介绍了导航事件和导航设计原则,并通过一个实际应用的状态图展示了页面间导航的方式。

导航概述

Windows Phone 应用程序基于 Silverlight 页面模型,用户可以在其中浏览不同屏幕的内容。

具体的可以查阅:http://msdn.microsoft.com/zh-cn/library/ff941091(v=vs.92).aspx

通过NavigationService类可以轻松的实现导航:

常用的方法是

NavigationService.Navigate(new Uri("/ConfigView.xaml", UriKind.Relative));

导航到ConfigView.xaml

还可以在app里面设置UriMapper注册页面的别名

      var mapper = new UriMapper();
      mapper.UriMappings.Add(CreateUriMapping("Config", "/ConfigView.xaml"));
      mapper.UriMappings.Add(CreateUriMapping("1", "/ConfigView.xaml"));

      RootFrame.UriMapper = mapper;

之后同样也可以导航到ConfigView.xaml

NavigationService.Navigate(new Uri("Config", UriKind.Relative));

NavigationService.Navigate(new Uri(”1", UriKind.Relative));

另外一个常用的是后退,使用后退堆栈BackStack进行导航

NavigationService.GoBack();

 

 

导航事件

PhoneApplicationPage提供了4个可以重写的事件方法,可以对导航

OnNavigatingFrom 将要离开页面触发

OnNavigatedFrom 离开页面后触发

OnNavigatedTo 进入页面后触发

OnFragmentNavigation 在导航到包括片断的统一资源标识符 (URI) 时调用。一个片断是片断分隔符 (#) 后的值。和html里面的#差不多。

 

导航设计

本程序只有3个页面 遥控器主页面,设置页面、帮助页面,它们之间的导航方式用状态图描述如下:

转载于:https://www.cnblogs.com/kiminozo/archive/2012/01/26/2329615.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值