引言 如今,软件 开发 正由 OO 时代进入到“面向组件的开发”时代。 Visual Basic 和 ASP.NET 这样一些编程工具之所以越来" name="description" />

ASP.NET 2.0 Web Part编程之定制Web Part(1)

发表于:2007-06-11来源:作者:点击数: 标签:
【 51CTO.com独家特稿】一、 MI LY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"> 引言 如今,软件 开发 正由 OO 时代进入到“面向组件的开发”时代。 Visual Basic 和 ASP.NET 这样一些编程工具之所以越来

51CTO.com独家特稿】一、MILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">引言

 

如今,软件开发正由OO时代进入到“面向组件的开发”时代。Visual BasicASP.NET这样一些编程工具之所以越来越流行,其主要原因在于:使用可视化方式描述对象更贴近自然,也因此进一步提高了软件的生产效率。另一方面,通过这种方式,开发人员能够以其自己特有的方式(如以.dll.ascx等文件形式)来创建和发布控件,从而极大地方便了广大软件开发者。

 

借助于组件(非可视化对象)和控件(可视化对象),我们可以重用这些软件元件所具有的功能,并最终创建出更高效的应用程序。

 

在上一世纪九十年代前后的Web世界中,所谓“动态的网页”,也就是每隔几周才更新一次的静态Web页面罢了。到九十年代后期,终端开发用户的动态内容的概念开始转变为使用服务器端处理技术,例如,当一个用户向他们的网站发出一个请求时,使用动态服务器页面来生成一个HTML页面。

 

随着Web应用程序用户对Web的理解越来越深入,他们的用户体验期望经历了巨大的变化。特别是,最近发展起来的AJAX现象又进一步加快了Web应用程序的这种动力和交互性,而终端用户开始能够尝试到这种体验,甚至能够根据自己的要求“裁剪”这种体验。

 

在本文中,我们先简单回顾一下ASP.NET Web Parts的粗略架构;然后,我们着手创建一个定制的Web Part控件,从而领略一下ASP.NET 2.0为进一步扩展创建定制服务器控件的技术。

 

二、ASP.NET Web Parts架构

 

Web Part提供了一种对我们已习惯的ASP.NET控件模型的扩展—添加重要的定制和个性化方面,以及那些能够在运行时刻由开发者或应用程序用户决定的方面。

 

用户能够在运行时刻决定哪一部分Web Part将会出现在他们的个性化的Web页面实例上,以及这些内容看起来的样子。

 

为了支持这一ASP.NET特征,开发者必须首先创建.ASPX页面形式的Web面—它们将包含Web Part并且与用户进行交互以便他们能够在运行时刻作出自己所希望的选择。

 

【重要结论】一个宿主ASP.NET 2.0 Web Part.ASPX页面必须包含且仅包含一个WebPartManager控件以及一个或多个WebPartZone控件的实例。

 

其中,这个WebPartManager控件能够为你的页面使用Web Part提供基层框架支持,而WebPartZone用于定义能够包含Web Part的页面中的区域。这些区域(即“Zone”)用于把页面组织成此页面中的一些相关联的块。

 

WebPartZone控件之外,还存在另外两个ASP.NET开发者可自由使用的ZoneCatalogZoneEditorZone控件。

 

一个CatalogZone用作一个容器,用于枚举可用在某页面中的Web Part控件;而EditorZone控件中包含一个编辑器—用户将调用之来设置包括在他们的Web页面上的Web Part中的属性。

 

下图1展示了一个使用Web Part控件的.ASPX页面的一般架构。而图2则展示了这一架构在实际中的使用情形。

 

 

 

1.一个使用Web Part控件的.ASPX页面的一般架构

 

注意,下图2中的页面上有两个可见的带(Zone),一个包含左边栏目,另一个包含右边栏目。其中,高亮区域是单个Web Part

 

 

 

2.实际使用Web Part控件的.ASPX页面情况

 

点击上图2中的“Add stuff”链接后可以使一个目录带看起来如下3所示。

 

 

3.目录区带看上去的样子

 


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

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

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