上一章讲的页面之间的传值,今天就说 URI 映射 吧。
我个人目前觉得这个 意义貌似不是太大,可能现在刚开始学windows phone 8 。遇见的情况比较少。所以还是说说。
URI映射通俗点的说法,就是不以不同的形态传输数据,自己定义一个参数的顺序,以便于自己编写代码。我自己都不知道我在说什么了。
说白点。就那我们上一章讲的传递参数 :
//方法一
this.NavigationService.Navigate(new Uri("/FourPage.xaml?UserName=" + username + "&Password=" + password,UriKind.Relative));
中间的
"/FourPage.xaml?UserName=" + username + "&Password=" + password"
看起太长不好看,页面多的时候不方便。因此我们将 它 以另外一种新型来写。如下:
//方法二
string uri = string.Format("/fourpage/{0}/{1}", username, password);
this.NavigationService.Navigate(new Uri(uri, UriKind.Relative));
但是简单这么替换程序无法识别,我们必须告诉他一个识别映射的方法。
这样我在App.xaml.cs类中完成 映射的私有方法,代码如下:
private void SetUriMapping()
{
if (RootFrame != null)
{
UriMapper mapper = new UriMapper();
UriMapping mapping = new UriMapping();
mapping.Uri = new Uri("/fourpage/{username}/{password}", UriKind.Relative);
mapping.MappedUri = new Uri("/FourPage.xaml?UserName={username}&Password={password}", UriKind.Relative);
mapper.UriMappings.Add(mapping);
RootFrame.UriMapper = mapper;
}
}
OK 启动模拟器,和我们上一章看到的效果一样
代码下载 地址 http://download.csdn.net/download/gongkepop/6042391
(写的不好 请见谅,有不对请留言告知我,免得误人子弟。)