博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
手把手玩转win8开发系列课程(11)
阅读量:4343 次
发布时间:2019-06-07

本文共 1658 字,大约阅读时间需要 5 分钟。

运行程序

这节的议程,我觉得很简单——运行程序

在vs界面布局的页面都是静态,真正让项目运行起来才是动态的了。只有使其运行起来,这样xaml与C#合二为一,以一个真正的程序显示出来。你可以选择调试菜单,也可以按F5键,这样,能够生成并且在模拟器中运行。运行的结果就是如图所示:

你可以清晰看见这样的效果,①一些来自于viewmodel中的数据源加载到了listview控件中。②我以前定义的一些数据的模板和样式也能在程序中得到了很好的应用。

我们还能够看到了许多真的只有动态运行的才能够看到的效果。譬如说,当光标移动到某一项的上面,这项目才能高亮显示。选择时候,显示不同的状态、这些变化是怎么来的啊?是来自于我源代码文件某项项的配置。

这样,一个项目已经能够运行了,可是这只是第一步。我们还在这个基础上,添加一些东西。使其项目功能更加的丰富。

导入其他的页面

你并非需要把所有的控件和源码单独一个xaml页面和一个源码文件中去。平时,为了项目更加的更加的管理。我们一般是这么做的,我可以创建多个页面,再把这些页面放在一起就ok了。依照这个道理。我这里也也创建了一个叫做NoItemSelected的页面。xaml源代码如下:

1 
9
10
11

这是一个简单的页面——这个页面是默认生成的。我能在ListView.xaml布局这个主要的页面上添加这个页面。添加页面源代码如下:

1 
2
3
5 6

这个Frame是一个呈现页面的容器,在源代码页面的Navigate方法,可以定义你导航到那个页面。相应的源代码如下:

1 using MetroGrocer.Data; 2 using Windows.UI.Xaml.Controls; 3 using Windows.UI.Xaml.Navigation; 4 namespace MetroGrocer.Pages { 5   public sealed partial class ListPage : Page { 6     ViewModel viewModel; 7     public ListPage() { 8       viewModel = new ViewModel(); 9       // … test data removed for brevity10       this.InitializeComponent();11       this.DataContext = viewModel;12      //导航到那个页面13 ItemDetailFrame.Navigate(typeof(NoItemSelected));14     }15     protected override void OnNavigatedTo(NavigationEventArgs e) {16     }17     //选择的事件  是当前选择的页面18     private void ListSelectionChanged(object sender, SelectionChangedEventArgs e) {19       viewModel.SelectedItemIndex = groceryList.SelectedIndex;20    }21   }22 }

navgiate的方法中参数是系统的,这个类型代表了你要加载的页面类,他是最简单方法获取系统类型的方法。相应的类型是关键字类型。这个结果就是导入到了其他的页面,相应的运行效果如图所示:

这样,就能导入其他的页面。   下一节,我们继续议程。

 

转载于:https://www.cnblogs.com/manuosex/archive/2012/12/03/2799074.html

你可能感兴趣的文章
jQueru中数据交换格式XML和JSON对比
查看>>
form表单序列化后的数据转json对象
查看>>
[PYTHON]一个简单的单元測试框架
查看>>
[BZOJ4303]数列
查看>>
一般处理程序在VS2012中打开问题
查看>>
C语言中的++和--
查看>>
thinkphp3.2.3入口文件详解
查看>>
POJ 1141 Brackets Sequence
查看>>
Ubuntu 18.04 root 使用ssh密钥远程登陆
查看>>
Servlet和JSP的异同。
查看>>
虚拟机centOs Linux与Windows之间的文件传输
查看>>
IOS内存管理
查看>>
[Bzoj1009][HNOI2008]GT考试(动态规划)
查看>>
Blob(二进制)、byte[]、long、date之间的类型转换
查看>>
OO第一次总结博客
查看>>
day7
查看>>
iphone移动端踩坑
查看>>
vs无法加载项目
查看>>
Beanutils基本用法
查看>>
玉伯的一道课后题题解(关于 IEEE 754 双精度浮点型精度损失)
查看>>