全面剖析ASP.NET 2.0中的向导控件(1)

发表于:2007-06-11来源:作者:点击数: 标签:
【51CTO.com独家特稿】我相信,每一位读者对于桌面应用中的向导概念肯定不会陌生;但是,在 Web 开发 中,通过 HTTP 连接实现一个向导并非易事。还好, ASP.NET 2.0 中新引入的向导使得这一问题相对容易。在本文中,让我们来详细剖析这个向导控件的使用思路

【51CTO.com独家特稿】我相信,每一位读者对于桌面应用中的向导概念肯定不会陌生;但是,在Web开发中,通过HTTP连接实现一个向导并非易事。还好,ASP.NET 2.0中新引入的向导使得这一问题相对容易。在本文中,让我们来详细剖析这个向导控件的使用思路;同时,本文还提供了一个简单的例子供您参考。

 

一、什么是向导?

 

无论你进行Web开发还是从事Windows开发,你经常需要使用表单来收集用户输入信息。当需要收集的输入数据能够被分解成特定的类型时,针对每一种类型使用一个相应的表单常常是典型的实现。典型情况下,整个过程可以被分解成各种步骤,每一步负责校验期望数据的一个特定子集。这种多步骤过程通常称作一个“向导”。

 

一个向导让你实现线性处理(从步骤1到步骤N),但是也允许用户跳过不必要的步骤或返回到前面的步骤以作出某些改变(非线性设计还能够通过编程方式控制,稍后我们会讨论)。在Web上实现一个向导是许多开发者都需要解决的一项任务;但是,在以前管理每一步中的导航和数据集合一直都很复杂。幸好,ASP.NET 2.0提供一个新的向导控件,从而大大简化了这一过程。

 

为了把一系列表单链接到一个象向导一样的用户接口中,你必须管理表单之间的导航,处理数据存储和管理每一步中的状态。跨页面寄送和显示/隐藏面板是能够应用于ASPASP.NET中从而实现构建向导的两项主要的技术。这种跨页面寄送技术包括把第一个页面输入的内容寄送到另一个不同的页面以及用隐藏域来存储以前的内容。借助于显示/隐藏面板技术,我们可以把各种视图加入到单个页面中并且基于当前步骤对其加以显示或隐藏。

 

第二种技术特别适合于ASP.NET 1.x应用程序。你将在后面看到,显示/隐藏还是ASP.NET 2.0实现向导控件的关键思想。

 

二、ASP.NET 2.0中的向导控件

 

ASP.NET 2.0向导(Wizard)控件简化了我们前面要实现的任务。这个控件提供了一种机制允许你轻松地把希望实现的向导构建为一个步骤集合—添加新的步骤或重新排序步骤。你不必为各步骤之间的导航或用户数据存储编写任何基础代码。

 

为使用向导控件,你只需遵循下面这些简单的步骤:

 

1.       把一个向导控件拖动到你的Web表单;

2.       把一些控件,图像和文本添加到每一个向导步骤中;

3.       存取该向导在各步骤之间的数据。

 

向导控件是一个复合控件,它继承自基类CompositeControl并且被集成到Visual Studio 2005的设计器中,它能够进行自身数据回寄以保持视图状态信息。这一事实使得我们能够实现非线性导航并且保证表单元素自动地跨多个向导过程视图重新填充。

 

一个向导中的每一步都是一种面板(一个文本,标记,图像和定制用户控件的容器)。图1展示了ASP.NET 2.0向导控件的架构。

 

 

MILY: 宋体; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">                  图1.Wizard控件结构图

 

三、使用向导控件

 

一个向导控件由四部分组成:头部,当前步骤视图,导航样和侧栏。所有这些组成部分(甚至更多),都可以通过使用一些属性加以修饰。其中,头部、侧栏和导航栏的内容能够通过模板进一步定制。

 

下面列表1中的代码概括了一个ASP.NET 2.0应用程序中的一个向导控件的典型实现代码。

 

列表1.典型的向导控件框架:

 

 

 

其中,最顶层属性允许你通过改变控件的字体、边框、颜色和标题来配置它的外观。

 


共4页: 1 [2] [3] [4] 下一页

原文转自:http://www.ltesting.net

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
...