windows phone 7基本导航
一个简单的示例------页面间导航。
在mainpage.xaml的内容区域(content area)放置一个textblock,并对其manipulationstarted事件注册一个事件处理程序:
<grid x:name="contentpanel" grid.row="1" margain="12,0,12,0">
<textblock text="导航到第二个页面" //textblock要显示的文本信息
horizontalalignment="center" //水平对齐方式为居中
verticalalingment="center" //竖直对齐方式为居中
padding="0 34" //内边距设置
manipulationstarted="ontextblockmanipulationstarted" />
</grid>
在mainpage.xaml.cs中的构造函数后面添加以下代码
void ontextblockmanipulationstarted(object sender,manipulationstartedeventargs e)
{
//navigate方法的第一个参数是一个uri类型的对象。第二个参数使用了urikind.relative来标明此uri是相对于mainpage.xaml文件的相对位置。
this.navigationservice.navigate(new uri("/secondpage.xaml",urikind.relative));
e.complete();
e.handled = true;
}
代码到此已ok,接下来创建第二个页面
在visual studio的solutionexplorer上右击项目名,选择add(新增)和new item(新建项),选择 windows phone portrait page(windows phone竖直页面),改名为secondpage
secondpage的内容,和第一个页面类似
<grid x:name="contentpanel" grid.row="1" margain="12,0,12,0">
<textblock text="返回到第一个页面"
horizontalalignment="center"
verticalalingment="center"
padding="0 34"
manipulationstarted="ontextblockmanipulationstarted" />
</grid>
接下来在secondpage.xaml.cs里创建返回第一个页面的触摸事件
void ontextblockmanipulationstarted(object sender,manipulationstartedeventargs e)
{
this.navigateservice.goback();
e.complete();
e.handled = true;
}
提示:要先引入system.windows.navigation命名空间
摘自 metro灵感