【Win10开发】如何在页面之间传值
2016-01-31 15:10
423 查看
我们知道UWP是通过不同的页面来展示不同的内容的,那么我们该怎么进行页面之间的传值呢?
首先我们在MainPage里面写一个ListView来展示一些英文单词。
然后将数据绑定到控件上。
接下来重点来了,我们要实现点击ListView的一个项时导航到另外一个页面并显示所选择的项。页面跳转时我们需要Navigate方法。它的第一个参数是需要导航的下一个页面,而第二个参数就是传给下一个页面的值。我们来看看具体代码吧。
此时当导航到下一个页面时,值同时也会传过去。那么在下一个页面如何去接受这个值呢?
我们就需要重写OnNavigatedTo方法,它的参数就是我们需要的值,来看代码。
这个时候我们就拿到了 传过来的值并把它显示到了第二个页面上 。是不是很简单呢?
最后,当然来看看效果吧。
首先我们在MainPage里面写一个ListView来展示一些英文单词。
List<English> wordList = new List<English> { new English { Word = "absolutely",}, new English { Word = "acceleration"}, new English { Word = "acceptance"}, new English { Word = "accessory"}, new English { Word = "accidental"}, new English { Word = "accommodate"}, new English { Word = "accord"}, new English { Word = "accordance"}, new English { Word = "accordingly"}, new English { Word = "accumlate"}, new English { Word = "accustom"}, }; ... ... public class English { public string Word { get; set; } }
然后将数据绑定到控件上。
list.ItemsSource = wordList;
接下来重点来了,我们要实现点击ListView的一个项时导航到另外一个页面并显示所选择的项。页面跳转时我们需要Navigate方法。它的第一个参数是需要导航的下一个页面,而第二个参数就是传给下一个页面的值。我们来看看具体代码吧。
private void list_ItemClick(object sender, ItemClickEventArgs e) { this.Frame.Navigate(typeof(SelectWord),(e.ClickedItem as English).Word); }
此时当导航到下一个页面时,值同时也会传过去。那么在下一个页面如何去接受这个值呢?
我们就需要重写OnNavigatedTo方法,它的参数就是我们需要的值,来看代码。
protected override void OnNavigatedTo(NavigationEventArgs e) { select.Text = e.Parameter.ToString(); base.OnNavigatedTo(e); }
这个时候我们就拿到了 传过来的值并把它显示到了第二个页面上 。是不是很简单呢?
最后,当然来看看效果吧。
相关文章推荐
- 【HDOJ】4775 Infinite Go
- CComPtr用法(转)
- BufferedReader.readLine()和DataInputStream.readUTF()
- apache的相关设置-给目录或者文件设置用户验证
- Robberies(HDU 2955 DP01背包)
- ThinkPHP - 查询语句
- kafka + jstorm版本升级安装(三)
- POJ2503字典树
- mysql根据select查询结果 循环更改
- http模拟请求工具
- Android 学习2----页面布局的学习
- Android开发学习之路--Activity之初体验
- Android开发学习之路--Activity之初体验
- Android 使用官方下拉刷新
- Spark机器学习读书笔记-CH04
- 【Xamarin 跨平台机制原理剖析】
- 排版题 3
- 排版题 3
- hdu1213 How Many Tables
- 数据结构:JavaScript实现链表