您所在的位置:读书频道 > 设计开发 > .Net系列 > 9.4.2 页面导航

9.4.2 页面导航

2008-09-29 17:24 强锋科技/杨明羽 清华大学出版社 我要评论(0) 字号:T | T
一键收藏,随时查看,分享好友!

《C# 3.0完全自学宝典》第9章WPF开发实例,这一章首先从WPF的基础概念、体系结构开始,让大家了解WPF的基本原理;然后,介绍WPF的开发模式、XAML代码等知识;最后,通过实例介绍WPF独立应用程序和WPF浏览器应用程序的开发过程。本小节为大家介绍的是页面导航。

AD:

9.4.2  页面导航

WPF浏览器应用程序页面(Page)的设计、开发等与WPF窗体一样,只是在页面导航上有所区别,在WPF窗体中,新窗体的显示是通过System.Windows.Window类的Show()或ShowDialog()方法来实现的。而在WPF页面中,新页面的显示大致需要以下3个步骤。

(1)创建页面对象:通过new关键字创建新的要显示的页面对象。

(2)对页面进行参数设置等必要的初始化操作,如果不需要初始化,则直接进入第(3)步。

(3)通过Page.NavigationService属性获取当前页面的导航对象,然后通过Navigation Service.Navigate()方法导航到新的页面。

示例代码9-13是示例代码9-12的后台C#代码,函数btnEnter_Click()以最简单的例子演示了导航到新页面的3个步骤,它首先创建一个新页面Page2的对象pg,然后设置Page2的显示必需参数UserName,最后通过Page.NavigationService属性的Navigate()方法导航到新的页面pg。

示例代码9-13:

namespace WPFBroseApp
{
/// <summary>
/// Page1.xaml 的交互逻辑
/// </summary>
public partial class Page1 : Page
{
public Page1( )
{
InitializeComponent( );
}
        private void btnEnter_Click(object sender, RoutedEventArgs e)
{
//创建新的页面对象pg
Page2 pg = new Page2( );
//初始化页面对象的参数
pg.UserName = this.tbName.Text;
//导航到新的页面对象pg
this.NavigationService.Navigate(pg);
}
}
}

其中,Page2是一个新的增加到项目WPFBroseApp中的页面,选中项目WPFBroseApp,通过选择右键菜单中的"添加"→"页"命令完成添加动作。示例代码9-14是Page2的   XAML代码和后台C#代码的具体实现,Page2在加载时通过Page_Loaded()方法显示欢迎    信息。

示例代码9-14:

<Page x:Class="WPFBroseApp.Page2"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Page2" Loaded="Page_Loaded" Height="52" Width="248">
<Grid>
<Label Name="lbHint" FontSize="20" FontWeight="Bold" Foreground="Blue"
HorizontalAlignment="Left" Width="272" Height="67"
VerticalAlignment="Top">Label</Label>
</Grid>
</Page>
-----------------------------------------------------------
------------------------------------------------------------------------
namespace WPFBroseApp
{
/// <summary>
/// Page2.xaml 的交互逻辑
/// </summary>
public partial class Page2 : Page
{
public Page2( )
{
InitializeComponent( );
}
        private string _UserName;
//用户名属性
public string UserName
{
get
{
return this._UserName;
}
set
{
this._UserName = value;
}
}
        //加载时显示欢迎信息
private void Page_Loaded(object sender, RoutedEventArgs e)
{
this.lbHint.Content = "欢迎----" + this._UserName;
}
}
}

在启动WPFBroseApp之后,通过单击"进入==>>"按钮导航到Page2,得到如图9-11所示的效果图,注意最上面的导航栏"返回"变成可用,通过该命令可以回退到Page1页面。

 
图9-11  WPFBroseApp
界面效果(2)
【责任编辑:夏书 TEL:(010)68476606】

回书目   上一节   下一节

网友评论TOP5

查看所有评论(

提交评论

  1. Linux服务器配置全程实录
  2. 揭秘--优秀PPT这样制作

热点专题

更多>>

读书

网管员必读—服务器与数据存储
《网管员必读—服务器与数据存储》全面、系统地介绍了在中、高级网络管理和网络工程实施中两个重要方面的主流技术和应用:硬件服

51CTO旗下网站

领先的IT技术网站 51CTO 领先的中文存储媒体 WatchStor 中国首个CIO网站 CIOage 中国首家数字医疗网站 HC3i 移动互联网生活门户 灵客风LinkPhone