`

WPF导航在page中的实现方法

 
阅读更多

WPF导航的实现方法有很多种。我们在文章中通过各种代码示例为大家详细介绍了这些方法的具体操作步骤,希望对大家有所帮助。

AD: 51CTO云计算架构师峰会 抢票进行中!

 

WPF中的有许多功能还需要我们在实际开发中去慢慢的体会其用法,以此来总结自己的使用技巧。在这里我们就先来了解下WPF导航的一些实现方法。

 

首先WPF导航在Page页中加一个< Hyperlink>的标签,再添中一个Click事件,指向后台处理程序。如下:

 

  1. < Hyperlink Click="
    hyperlink_Click"
    >你好< /Hyperlink>  

在.cs文件中,需要引入 using System.Windows.Navigation命名空间

然后处理事件,也就是WPF导航主体了。

 

  1. void hyperlink_Click
    (object sender, Routed
    EventArgs args)   
  2. {  
  3.  

 

有四种WPF导航方法(事例中是由当前页向Page4导航),如下:

1、

 

  1. Page4 page = new Page4();  
  2. NavigationService ns =  NavigationService.GetNavi gationService(this);  
  3. ns.Navigate(page); 

 

2、

 

  1. NavigationService ns =  NavigationService.GetNavi gationService(this);  
  2. ns.Source = new Uri ("Page4.xaml", UriKind. Relative); 

 

3、

 

  1. NavigationService ns =  NavigationService.GetNavi gationService(this);  
  2. ns.Content = new Page4(); 

 

4、
 

  1. Page4 page = new  Page4();   
  2. this.NavigationService. Navigate(page); 

 

5、

  1. this.Navigation Service.Refresh();//导航到本页 

如果想缓存浏览过的页面可以在Page头中设置:

 

  1. < Page 
  2. x:Class="BrowserApp" 
  3. xmlns="http://schemas.microso ft.com/winfx/2006/xaml/ presentation" 
  4. xmlns:x="http://schemas. microsoft.com/winfx/2006/xaml" 
  5. WindowTitle="Page3"   
  6. KeepAlive="True">   
  7. < /Page> 

 

如果想减少内存的开销,可以使用这个WPF导航方法(注意文中黑体字):

 

  1. public static readonly  DependencyProperty RetainedStateDP;  
  2. using System;  
  3. using System.Windows;  
  4. using System.Windows.Controls;  
  5. using System.Windows.Navigation;  
  6. public partial class RetainedState DPPage : System.Windows.Controls.Page  
  7. {  
  8. public static readonly  DependencyProperty RetainedStateDP;  
  9. static RetainedStateDPPage()  
  10. {  
  11. RetainedStateDPPage.RetainedStateDP =  
  12. DependencyProperty.Register(  
  13. "RetainedState",  
  14. typeof(string),  
  15. typeof(RetainedStateDPPage),  
  16. new FrameworkPropertyMetadata(  
  17. null,  
  18. FrameworkPropertyMetadata Options.Journal));  
  19. }  
  20. public RetainedStateDPPage()  
  21. {  
  22. InitializeComponent();  
  23. }  
  24. public string RetainedState  
  25. {  
  26. get  
  27. {  
  28. return (string)base.GetValue (RetainedStateDPPage.RetainedStateDP);  
  29. }  
  30. set  
  31. {  
  32. base.SetValue(RetainedStateDPPage. RetainedStateDP, value);  
  33. }  
  34. }  
分享到:
评论

相关推荐

    WPF多页面Page导航实例

    这是一个通过WPF Frame控件实现多个Page之间的导航功能实例

    简单WPF左侧导航框

    基于VS2013开发的WPF应用,是一个简单通用的界面框架,定制化了TabControl,达到界面导航的效果,可以将不同的界面放在Page页面中,方便使用。

    WPF MVVM Page 页面导航实例

    WPF MVVM Page 页面导航实例,参照网上实例,手写实现,详细可以查看我的博客。 WPF MVVM Page 页面导航实例,参照网上实例,手写实现,详细可以查看我的博客。

    WPF导航page演示实例

    WPF实现page页面导航跳转演示实例 private void NavigationWindow_Navigating(object sender, NavigatingCancelEventArgs e) { if (Content != null && !_allowDirectNavigation) { e.Cancel = true; _navArgs ...

    wpf相互调用传递参数

    wpf编译生成的exe文件在其他文件调用时传递参数的实现方式

    WPF按钮条导航控件

    在WrapPanel基础上设计的按钮条导航控件,可横向/纵向排列按钮,也可以多列排列控件,类似于TabControl的标签条,用于不同页面的导航,但该控件没有容器,通过和Frame控件的配合,实现导航到不同的Page对象,样式可...

    wpf源码大全 精通C#3.0图书源码 详细源码 学习好用

    NavigationWindowDemo 使用WPF中的导航窗口进行导航。 PageFunctionDemo 使用PageFunction功能返回数据示例。 SaveandRestoreWindowState 保存和恢复窗口状态示例。 SharpedWindow 图形窗口示例 ...

    WPF Page页仿Win7任务栏的快照导航,模拟Win7任务栏

    用Page页做了一个简陋的仿照Win7任务栏快照,主要用到VisualBrush这个属性,另外附带上MSDN与此相关的两个Demo,外加上一个技术友人写的Window窗口的模拟Win7任务栏快照

    WPF页面切换源码下载

    在’WPF揭秘’和’WPF in Action’中都有提到使用NavigationWIndow或是Frame来实现导航,,只要Navigate就OK了。 操作起来也就3步: 1. 新建Application,Window1默认继承Window,这里改为继承自NavigationWindow,...

    一款非常好的WPF编程宝典2010 源代码

    9.2.5 在另外一个页面中宿主页面 212 9.2.6 在Web浏览器中宿主页面 213 9.3 页面历史 214 9.3.1 深入分析WPF中的URI 214 9.3.2 导航历史 215 9.3.3 维护自定义的属性 216 9.4 导航服务 217 9.4.1 通过编程...

    Apress.Pro.WPF.in.C.Sharp.2008.2nd.Edition.Feb.2008

    9.2.5 在另外一个页面中宿主页面 212 9.2.6 在Web浏览器中宿主页面 213 9.3 页面历史 214 9.3.1 深入分析WPF中的URI 214 9.3.2 导航历史 215 9.3.3 维护自定义的属性 216 9.4 导航服务 217 9.4.1 通过编程进行导航 ...

    ASP.NET3.5从入门到精通

    目录 第一篇 .NET基础 第 1 章认识 ASP.NET 3.5 1.1 什么是ASP.NET 1.1.1 .NET 历史与展望 1.1.2 ASP.NET 与ASP 1.1.3 ASP.NET 开发工具 1.1.4 ASP.NET 客户端 1.1.5 ASP.NET 3.5 新增控件 ...第 19 章 WPF...

    ASP.NET 3.5 开发大全word课件

    这是整部学习资料 由于太大第一章免费供应给大家 在我的上传资源中 如果觉得还不过希望大家给个好评 当然具体本书的作者就不深究了把! 第1章 认识ASP.NET 3.5 1.1 什么是ASP.NET 1.1.1 .NET历史与展望 1.1.2 ASP...

    ASP.NET 3.5 开发大全11-15

    12.1.4 将CSS应用在控件上 12.1.5 主题和皮肤 12.1.6 页面主题和全局主题 12.1.7 应用和禁用主题 12.1.8 用编程的方法控制主题 12.2 母版页 12.2.1 母版页基础 12.2.2 内容窗体 12.2.3 母版页的运行方法 12.2.4 嵌套...

    ASP.NET 3.5 开发大全

    12.1.4 将CSS应用在控件上 12.1.5 主题和皮肤 12.1.6 页面主题和全局主题 12.1.7 应用和禁用主题 12.1.8 用编程的方法控制主题 12.2 母版页 12.2.1 母版页基础 12.2.2 内容窗体 12.2.3 母版页的运行方法 12.2.4 嵌套...

    ASP.NET 3.5 开发大全1-5

    12.1.4 将CSS应用在控件上 12.1.5 主题和皮肤 12.1.6 页面主题和全局主题 12.1.7 应用和禁用主题 12.1.8 用编程的方法控制主题 12.2 母版页 12.2.1 母版页基础 12.2.2 内容窗体 12.2.3 母版页的运行方法 12.2.4 嵌套...

    ASPNET35开发大全第一章

    12.1.4 将CSS应用在控件上 12.1.5 主题和皮肤 12.1.6 页面主题和全局主题 12.1.7 应用和禁用主题 12.1.8 用编程的方法控制主题 12.2 母版页 12.2.1 母版页基础 12.2.2 内容窗体 12.2.3 母版页的运行方法 12.2.4 嵌套...

    asp.net知识库

    如何在Asp.Net1.1中实现页面模板(所谓的MasterPage技术) Tool Tip 示例(FILTER版) Tool Tip示例 (htc版) 一个.net发送HTTP数据实体的类 按键跳转以及按Enter以不同参数提交,及其他感应事件 动态控制Page页的...

Global site tag (gtag.js) - Google Analytics