Web Parts的总控中心,管理 Web Parts及区域的列表管理页面状态 (比如显示状态),当页面状态时发生改变时触发事件,协助Web Parts间的通讯,管理个性化等.
<asp:WebPartManager ID="WebPartManager1" RunAt="server" />
2.WebPartZone 控件在 Web Parts页面中定义区域,定义每个区域当中Web Part的默认显示样式及布局.
<asp:WebPartZone ID="WeatherZone"
DragHighlightColor="244,198,96" RunAt="server">
<PartTitleStyle BackColor="#2254B1" ForeColor="White" />
<PartStyle BorderColor="#81AAF2" BorderStyle="Solid" BorderWidth="1px" />
<ZoneTemplate>
<!-- Web Parts declared here -->
</ZoneTemplate>
</asp:WebPartZone>
3.Web Part ChromeDragHighlightColor="244,198,96" RunAt="server">
<PartTitleStyle BackColor="#2254B1" ForeColor="White" />
<PartStyle BorderColor="#81AAF2" BorderStyle="Solid" BorderWidth="1px" />
<ZoneTemplate>
<!-- Web Parts declared here -->
</ZoneTemplate>
</asp:WebPartZone>
标题框及Web Part的边框,通过 WebPartZone 定义其外观.
4.Web Parts
在 WebPartZone中定义的控件;Web controls, user controls, custom controls
未实现IWebPart接口的控件将封装进GenericWebParts
增加以下属性: Title, Description, etc.
<ZoneTemplate>
<asp:Calendar Title="Calendar" ID="Calendar1" RunAt="server" />
<user:Weather Title="Weather" ID="Weather1" RunAt="server" />
<custom:Search Title="Search" ID="Search1" RunAt="server" />
</ZoneTemplate>
5.WebPartManager.DisplayMode<asp:Calendar Title="Calendar" ID="Calendar1" RunAt="server" />
<user:Weather Title="Weather" ID="Weather1" RunAt="server" />
<custom:Search Title="Search" ID="Search1" RunAt="server" />
</ZoneTemplate>
设置或者获取页面的显示模式
BrowserDisplayMode “正常的” 显示模式,无法编辑(默认)
DesignDisplayMode 允许拖拽式布局编辑
EditDisplayMode 允许编辑Web Part的外观及行为
CatalogDisplayMode 允许将Web Part添加在另外的页面上
ConnectDisplayMode 允许Web Parts之间进行通讯
6.DisplayMode 事件DesignDisplayMode 允许拖拽式布局编辑
EditDisplayMode 允许编辑Web Part的外观及行为
CatalogDisplayMode 允许将Web Part添加在另外的页面上
ConnectDisplayMode 允许Web Parts之间进行通讯
WebPartManager.DisplayModeChanging 指示显示模式是否要发生改变
WebPartDisplayModeCancelEventArgs 获得新的显示模式并且允许控制者取消这种改变
WebPartManager.DisplayModeChanged 指示显示模式是否已经发生改变
WebPartDisplayModeEventArgs 得到原来的显示模式
7.其它的区域类型WebPartManager.DisplayModeChanged 指示显示模式是否已经发生改变
WebPartDisplayModeEventArgs 得到原来的显示模式
WebPartZones 定义基本的页面显示内容,在任何时间均显示,其它区域允许页面可以被编辑,根据显示模式有条件得进行显示.
CatalogZone 允许用户在页面上添加Web Part
EditorZone 允许用户更改Web Part的属性及布局
ConnectionsZone 允许用户建立Web Part之间的通讯
8.CatalogZone 控件EditorZone 允许用户更改Web Part的属性及布局
ConnectionsZone 允许用户建立Web Part之间的通讯
允许Web Part可以交互式的进行添加,包含一个或者多个 CatalogPart 控件
PageCatalogPart 显示页面上已经删除的Web Part的列表
DeclarativeCatalogPart 显示声明在 <WebPartsTemplate>中的Web Part的列表
ImportCatalogPart 允许从 .WebPart文件中导入的Web Part
声明 CatalogZone
<asp:CatalogZone ID="CatalogZone1" Runat="server">
<ZoneTemplate>
<asp:PageCatalogPart ID="PageCatalogPart1" Runat="server" />
<asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1" Runat="server">
<WebPartsTemplate>
<!-- Declarative Web Parts go here -->
</WebPartsTemplate>
</asp:DeclarativeCatalogPart>
<asp:ImportCatalogPart ID="ImportCatalogPart1" Runat="server" />
</ZoneTemplate>
</asp:CatalogZone>
9.EditorZone控件DeclarativeCatalogPart 显示声明在 <WebPartsTemplate>中的Web Part的列表
ImportCatalogPart 允许从 .WebPart文件中导入的Web Part
声明 CatalogZone
<asp:CatalogZone ID="CatalogZone1" Runat="server">
<ZoneTemplate>
<asp:PageCatalogPart ID="PageCatalogPart1" Runat="server" />
<asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1" Runat="server">
<WebPartsTemplate>
<!-- Declarative Web Parts go here -->
</WebPartsTemplate>
</asp:DeclarativeCatalogPart>
<asp:ImportCatalogPart ID="ImportCatalogPart1" Runat="server" />
</ZoneTemplate>
</asp:CatalogZone>
允许交互式的对 Web parts进行更改,包含一个或者多个 EditorPart 控件
AppearanceEditorPart 提供修改标题及其它界面相关属性的UI
BehaviorEditorPart 提供修改行为属性的UI
LayoutEditorPart 提供修改Web Part的显示状态,区域及区域索引的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>
10.PropertyGridEditorPartBehaviorEditorPart 提供修改行为属性的UI
LayoutEditorPart 提供修改Web Part的显示状态,区域及区域索引的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>
允许修改自定义属性的UI显示标记为 [WebBrowsable]的属性
string _stocks; // e.g., "MSFT,INTC,AMZN"
[WebBrowsable]
public string Stocks
{
get { return _stocks; }
set { _stocks = value; }
}
public string Stocks
{
get { return _stocks; }
set { _stocks = value; }
}