WPF学习之页间导航与页间数据传递
 
 
WPF学习之页间导航与页间数据传递 

在WPF中可以非常简单的实现窗口页间的导航:这里有三种方法:

1、Page调用NavigationService.Navigate

新建项目,并新建一个NavigationWindow的窗体作为主窗体,并将Source指向page1.xaml

然后新建一个页面page1,(做为主窗体的主题内容。) 在page1上方一个button1

然后新建另一个页面page2,在page2上放一个button2,

在button1 的click事件中就可以写实现转向的方法:

Page2 p=new Page2();

this.NavigationService.Navigate(page2);

以上两行代码等价于

this.NavigationService.Navigate(new uil("page2.xaml",UriKind.Relative));

2、xaml中使用Hyperlink标签:

<Hyperlink NavigateUri="page2.xaml">

3、NavigationWindow的导航日志

返回上一页:this.NavigationService.GoBack

向前下一页:this.NavigationService.GoForward

已上是页面之间导航,同时在转向的同时最常见的就是要数据传递:

一.通过NavigationService.Navigate传递参数

1.首先new一个page对象:

Page2 page2 = new Page2();

2.通过NavigationService.Navigate传递参数

this.NavigationService.Navigate(page2,"frompage1");

3.在Page2,处理NavigationWindow的LoadCompleted事件

this.NavigationService.LoadCompleted += new LoadCompletedEventHandler(page2_LoadCompleted);

4.在page2_LoadCompleted方法里获取传递过来的参数

void page2_LoadCompleted(object sender,NavigationEventArgs e)

    {

      if(e.ExtraData != null)

      {

string args = e.ExtraData.toString();

      }

}

 二、通过构造函数传递参数(最易使用)

  首先new一个page对象并用NavigationService.Navigate转向

    Page2 page2 = new Page2("frompage1");

    this.NavigationService.Navigate(page2);

在page2中定义构造函数

    public Page2(string args)

    {

      string args2 = args;

    }

 三、通过Application.Properties的全局数据

   用实例或URI导航到页面

  Application.Properties["Args"] = "frompage2";

     Page2 page2 = new Page2();

  this.NavigationService.Navigate(page2);

   在page2页面检查参数值

if(Application.Properties["Args"] != null)

     {

      string arg = Application.Properties["Args"];

     }

转载于:https://www.cnblogs.com/greefsong/p/3217094.html

WPF学习之页间导航与页间数据传递相关推荐

  1. 业务展示类网站高保真原型模板库、企业品牌官网、公司业务介绍、产品展示及营销、首页模板、内页模板、单页模板、整站模板、导航、轮播、横幅、列表、客户、案例、页脚、动态面板、母版、页面事件、窗口函数

    本作品是一套专为业务展示类网站而推出的原型模板库,适用于制作企业品牌官网.公司业务介绍.产品展示及营销等各类网站.作品中包含了符合目前主流展示类网站设计风格的丰富模板及素材,并以UI设计稿级别的高保真 ...

  2. 用 Markdown 写作(一)——添加文章页内导航

    Markdown 可以用更简化的标记来写文章,基本的语法可以参考Markdown 语法说明 (简体中文版). 我平时很少按照论文的写法去写博客,说来忏愧,因为很少写技术性的文章,最近看到百度百科和很多 ...

  3. php 数组课件,php学习 数组课件第1/2页

    php学习 数组课件第1/2页 2021-01-23 15:39:308 下标:数组中的识别名称也就是字符串或整数在数组中的代号 数组中有几个索引值就被称为几维数组. 索引值:索引是对数据库表中一列或 ...

  4. 【HTML+CSS】页内侧边导航栏 页内导航

    页内侧边导航栏 页内导航 源码 HTML部分 CSS部分 效果 源码 HTML部分 <!DOCTYPE html> <html><head><meta cha ...

  5. 前端基础学习之h5c3-购物车宣传页动画小练习

    index.html: <!DOCTYPE html> <html lang="en"> <head><meta charset=&quo ...

  6. GridView数据库分页+自定义分页导航(二):自定义分页导航。首页、上一页、下一页、尾页和跳转

    完成图: 先进入模板编辑模式,选择[PagerTemplate],添加自己所需的导航控件 列入这样的,上一页和下一页和GO使用[LinkButton],也可使用其他的控件,[注:LinkButton ...

  7. 简约二次元网址导航发布页HTML源码

    简介: 简约二次元网址导航发布页HTML源码,就一个个人导航单页源码,非常轻量级,只有技术KB左右,上传服务器即可自行修改标题文字即可使用,背景图自行替换. 网盘地址: http://zijiepan ...

  8. HTML简洁单页网址导航模板

    介绍: HTML简洁单页网址导航模板,直接上图,需要的自取 网盘下载地址: http://kekewangLuo.cc/9yNyorrYUK50 图片:

  9. #今日论文推荐# 爱丁堡大学等首篇《移动无线网络中的深度学习》综述论文,67页pdf涵盖570篇文献阐述深度学习在移动无线网络中的应用最佳实践

    #今日论文推荐# 爱丁堡大学等首篇<移动无线网络中的深度学习>综述论文,67页pdf涵盖570篇文献阐述深度学习在移动无线网络中的应用最佳实践 移动设备的迅速普及以及移动应用和服务的日益普 ...

  10. 依彤学习公务员考试分类第2页资料

    依彤学习公务员考试分类第2页资料 你认为造成群众看病难.看病贵问题的重要 公务员考试 正确答案:(1)卫生事业发展中存在的一个突出问题就是卫生资源配置不合理.优质资源过度向大医院集中城市大中型医院集中 ...

最新文章

  1. java Date 和 数据库Date,DateTimed
  2. 面向对象三大特性一一封装(encapsulation)
  3. 字节跳动获CVPR2021 细粒度图像竞赛双料冠军
  4. 【面试】Java集合篇--图解HashMap的put方法的具体流程
  5. ubuntu下使用python将ppt转成图片_Ubuntu下使用Python实现游戏制作中的切分图片功能...
  6. 所有controller interceptor_阿里二面:filter、interceptor、aspect应如何选择?很多人中招...
  7. iOS9 开发新特性 Spotlight使用
  8. 内存一致性模型(Memory Consistency Models)
  9. 实验任务(四)---恶意代码技术
  10. 干货分享 | 4万字全面解读数据中台、数据仓库、数据湖(建议收藏)
  11. spring security 结合cas单点登录退出后的返回地址
  12. 记录Android平铺展开效果属性动画
  13. 量子力学第十一弹——变分法
  14. 【Vue实用功能】Vue实现浏览器全屏退出全屏
  15. 嵌入式应用开发在线图书网址
  16. linux桌面版和服务器版区别_简单普及一些linux和windows的区别,减少新入手一些云服务时的不适应...
  17. echarts柱状图顶部与柱体中同时显示数值
  18. A Convolutional Neural Network Model for Predicting a Product’s Function, Given Its Form
  19. 为什么某些网页打不开而别人却能打开?
  20. 华为 USG6000防火墙配置镜像模式双机热备

热门文章

  1. 如何实现BootStrapTable的动态表格
  2. VUE依赖ol版本问题:geotiff.js Unexpected token
  3. Windows下安装和配置Java JDK
  4. WebStorm介绍
  5. Python细节面试题--小整数对象池和大整数对象池
  6. jmeter使用_jmeter概念及使用
  7. 谷粒商城:跨域问题解决
  8. 实战React:ToDoList
  9. CSS:设置图片不可拖动
  10. Java获取计算机各类信息的方法(磁盘,系统,内存等等信息)