文章教程

14.2WebPart的基本控件

8/31/2020 9:56:04 PM 人评论 次浏览

图片 1 知识点讲解:光盘:视频\PPT讲解(知识点)\第14章\WebPart的基本控件.mp4

在WebPart工具箱中共有14种控件,由此可见,WebPart也是通过控件来实现其基本功能的。本节将详细讲解WebPart中WebPartManager、WebPartIone、CatalogIone和EditorIone等控件的基本知识。

WebPartManager控件是所有WebPart控件的总控中心,其他的WebPart控件的功能和服务都是基于WebPartManager控件的。在需要进行WebPart设计时,首先要在页面中添加一个WebPartManager控件,其具体引用格式如下。

<asp:WebPartManagerID="WebPartManager1"runat="server"></asp:WebPartManager>

WebPartManager控件的主要功能如下。

  • 管理 WebPart及区域的列表。
  • 管理页面状态 (如显示状态),当页面状态发生改变时触发事件。
  • 协助WebPart之间的通信。
  • 管理个性化。

WebPartManager控件有5种显示模式,通过WebPartManager.DisplayMode来设置或者获取页面的显示模式,其具体说明如下。

  • BrowserDisplayMode:“正常的”显示模式,无法编辑(默认)。
  • DesignDisplayMode:允许拖曳式布局编辑。
  • EditDisplayMode:允许编辑WebPart的外观及行为。
  • CatalogDisplayMode:允许将WebPart添加在另外的页面上。
  • ConnectDisplayMode:允许WebPart之间进行通信。

要使用WebPart框架,至少要有一个WebPartZone控件。WebPartZone包含WebPart控件,定义了区域内WebPart控件的布局和外观。如前所述,WebPartZone可以包含用户控件、WebPart和Web服务器控件。在ASPX页面中,WebPartZone包含一个ZoneTemplate,而ZoneTemplate包含要显示的控件。WebPartZone控件的声明格式如下。

<asp:WebPartZone ID="EventsZone" runat="server">
<ZoneTemplate>
交互内容
</ZoneTemplate>
</asp:WebPartZone>

CatalogZone控件是一个真正的目录,它可以从目录中选择WebPart。CatalogZone控件还可以管理WebPart的其他区域。由CatalogZone控件管理的WebPart是CatalogPart控件。ASP.NET中有3种不同的目录:页面目录、声明性目录和导入目录。

CatalogZone控件包括如下3个属性。

  • PageCatalogPart:显示页面上已经删除的WebPart的列表。
  • DeclarativeCatalogPart:显示声明在 <WebPartTemplate>中的WebPart的列表。
  • ImportCatalogPart:允许从.WebPart文件中导入的WebPart。

CatalogZone控件的声明格式如下。

<asp:CatalogZone ID="CatalogZone1" Runat="server">
<ZoneTemplate>
<asp:PageCatalogPart ID="PageCatalogPart1" Runat="server" />
<asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1" Runat="server">
<WebPartTemplate>
</WebPartTemplate>
</asp:DeclarativeCatalogPart>
<asp:ImportCatalogPart ID="ImportCatalogPart1" Runat="server" />
</ZoneTemplate>
</asp:CatalogZone>

EditorZone控件用于改变WebPart的外观、行为和布局。这些操作可以在不同的编辑器部分进行。把控件设置为Edit模式,编辑器部分就被激活。允许交互式地对WebPart进行更改,包含一个或者多个EditorPart 控件。EditorZone控件包含如下4个EditorPart属性。

  • AppearanceEditorPart:提供修改标题及其他界面相关属性的UI。
  • BehaviorEditorPart:提供修改行为属性的UI。
  • LayoutEditorPart:提供修改WebPart的显示状态、区域及区域索引的UI。
  • PropertyGridEditorPart:提供修改定制属性的UI。

EditorZone控件的声明格式如下。

<asp:EditorZone ID="EditorZone1" Runat="server">
<ZoneTemplate>
<asp:AppearanceEditorPart ID="AppearanceEditorPart1" Runat="server" />
<asp:BehaviorEditorPart ID="BehaviorEditorPart1" Runat="server" />
<asp:LayoutEditorPart ID="LayoutEditorPart1" Runat="server" />
</ZoneTemplate>
</asp:EditorZone>

另外,其他常用WebPart控件的基本信息如表14-1所示。

表14-1 WebPart控件信息

WebPart基本控件

说  明

ConnectionsZone

包含WebPartConnection控件,并提供用于管理链接的用户界面

WebPart (GenericWebPart)

呈现主要用户界面;大多数WebPart用户界面控件属于此类别。若要最大限度地实现编程控制,可以创建从WebPart基控件派生自己的自定义WebPart控件。此外,还可以将现有服务器控件、用户控件或自定义控件用作WebPart控件。只要在区域中放置了上述任意控件,运行时WebPartManager控件就会自动用GenericWebPart控件包装这些控件,以便用户可以通过WebPart功能使用这些控件

CatalogPart

包含用户可添加到页面上的可用WebPart控件的列表

WebPartConnection

在页面中两个WebPart控件之间创建连接。该连接将其中一个WebPart控件定义为数据的提供者,而将另一个定义为使用者

EditorPart

用作专用编辑器控件的基类

教程类别