WebPartZone 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
用作 Web 部件控件集内的主控件,用于在网页中承载 WebPart 控件。
public ref class WebPartZone : System::Web::UI::WebControls::WebParts::WebPartZoneBase
public class WebPartZone : System.Web.UI.WebControls.WebParts.WebPartZoneBase
type WebPartZone = class
inherit WebPartZoneBase
Public Class WebPartZone
Inherits WebPartZoneBase
- 继承
示例
下面的代码示例演示如何在 WebPartZone Web 部件页中使用 控件。 若要运行代码示例,必须编译此源代码。 可以显式编译它,并将生成的程序集放入网站的 Bin 文件夹或全局程序集缓存中。 或者,可以将源代码放入站点的“App_Code”文件夹中,并在运行时动态编译源代码。 有关演示这两种编译方法的演练,请参阅 演练:开发和使用自定义 Web 服务器控件。
本示例的第一部分演示了一个从 WebPartZone 类继承的自定义类,该类在构造函数中设置两个基区域属性。
using System;
using System.Collections;
using System.ComponentModel;
using System.Security.Permissions;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
namespace Samples.AspNet.CS.Controls
{
[AspNetHostingPermission(SecurityAction.Demand,
Level=AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission(SecurityAction.InheritanceDemand,
Level=AspNetHostingPermissionLevel.Minimal)]
public class MyWebPartZone : WebPartZone
{
public MyWebPartZone()
{
base.VerbButtonType = ButtonType.Button;
base.CloseVerb.Enabled = false;
}
}
}
Imports System.Web.UI.WebControls.WebParts
Imports System.Web.UI.WebControls
Imports System.Web.UI
Imports System.Web
Imports System.Security.Permissions
Imports System.ComponentModel
Imports System.Collections
Namespace Samples.AspNet.VB.Controls
<AspNetHostingPermission(SecurityAction.Demand, _
Level := AspNetHostingPermissionLevel.Minimal)> _
<AspNetHostingPermission(SecurityAction.InheritanceDemand, _
Level := AspNetHostingPermissionLevel.Minimal)> _
Public Class MyWebPartZone
Inherits WebPartZone
Public Sub New()
MyBase.New
MyBase.VerbButtonType = ButtonType.Button
MyBase.CloseVerb.Enabled = false
End Sub
End Class
End Namespace
本示例的第二部分显示了一个包含自定义 WebPartZone 控件的页面。 请注意,页面需要页面顶部附近的特殊 Register
指令来引用包含自定义区域的程序集。 该页还包含元素 <asp:webpartmanager>
,每个 Web 部件页上都需要该元素。
<cc1:MyWebPartZone>
表示自定义WebPartZone控件的 元素包含标准 ASP.NET Calendar 控件。 由于控件包含在区域中 WebPartZone ,因此控件 Calendar 将在运行时与控件 GenericWebPart 一起包装,这使它能够充当 WebPart 控件。
<%@ Page Language="C#" %>
<%@ Register TagPrefix="cc1"
Namespace="Samples.AspNet.CS.Controls"
Assembly="MyWebPartZoneCS" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:WebPartManager ID="WebPartManager1" runat="server" />
<cc1:MyWebPartZone ID="MyWebPartZone1" runat="server">
<VerbStyle Font-Italic="true" />
<PartChromeStyle BackColor="lightblue" />
<PartStyle BackColor="gray" />
<PartTitleStyle Font-Bold="true" />
<ZoneTemplate>
<asp:Calendar ID="Calendar1" runat="server"
Title="My Calendar" />
</ZoneTemplate>
</cc1:MyWebPartZone>
</div>
</form>
</body>
</html>
<%@ Page Language="vb" %>
<%@ Register TagPrefix="cc1"
Namespace="Samples.AspNet.VB.Controls"
Assembly="MyWebPartZoneVB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:WebPartManager ID="WebPartManager1" runat="server" />
<cc1:MyWebPartZone ID="MyWebPartZone1" runat="server">
<VerbStyle Font-Italic="true" />
<PartChromeStyle BackColor="lightblue" />
<PartStyle BackColor="gray" />
<PartTitleStyle Font-Bold="true" />
<ZoneTemplate>
<asp:Calendar ID="Calendar1" runat="server"
Title="My Calendar" />
</ZoneTemplate>
</cc1:MyWebPartZone>
</div>
</form>
</body>
</html>
检查自定义 WebPartZone 控件的声明性标记。 请注意,可以在标记中设置各种区域级属性,如以下代码示例所示。
注意
请务必注意 元素的 <zonetemplate>
用法。 如备注部分中所述,此元素在区域中是必需的 WebPartZone ,才能包装在页面中声明的静态 WebPart 控件。
<cc1:MyWebPartZone ID="MyWebPartZone1" runat="server">
<VerbStyle Font-Italic="true" />
<PartChromeStyle BackColor="lightblue" />
<PartStyle BackColor="gray" />
<PartTitleStyle Font-Bold="true" />
<ZoneTemplate>
<asp:Calendar ID="Calendar1" runat="server"
Title="My Calendar" />
</ZoneTemplate>
</cc1:MyWebPartZone>
<cc1:MyWebPartZone ID="MyWebPartZone1" runat="server">
<VerbStyle Font-Italic="true" />
<PartChromeStyle BackColor="lightblue" />
<PartStyle BackColor="gray" />
<PartTitleStyle Font-Bold="true" />
<ZoneTemplate>
<asp:Calendar ID="Calendar1" runat="server"
Title="My Calendar" />
</ZoneTemplate>
</cc1:MyWebPartZone>
注解
在 Web 部件功能中,区域是网页上包含 Web 部件控件的已定义区域。 区域的主要功能是布局其包含的控件,并为这些控件提供通用用户界面 (UI) 。 有关区域及其在 Web 部件应用程序中的使用方式的一般信息,请参阅基 WebZone 类和 WebPartZoneBase 类的参考文档,以及标题为 Web 部件控件集概述的主题。
控件的特殊 WebPartZone 功能是包含 WebPart 构成 Web 部件应用程序主 UI 的控件。
WebPartZone可以在网页上以持久性格式声明控件,使开发人员能够将其用作模板并在 元素中添加<asp:webpartzone>
其他服务器控件。 任何类型的服务器控件(如果添加到 WebPartZone 区域)都可以在运行时充当 WebPart 控件。 无论添加的控件是 WebPart 控件、用户控件、自定义控件还是 ASP.NET 控件,都是如此。 有关详细信息,请参阅 类的主题 GenericWebPart 。
除了包含 WebPart 控件外, WebPartZone 控件还为它包含的控件提供通用 UI。 此通用 UI(统称为 chrome)包含所有控件上的外围 UI 元素,例如边框、标题、页眉和页脚、样式特征以及用户可以对控件执行的 UI 操作 (谓词,例如关闭或最小化) 。
注意
Internet Explorer 可能会以意外方式呈现 或其 WebPartZone 包含控件的高度,具体取决于区域的方向。 有关更多详细信息,请参阅 或 Height 属性的文档LayoutOrientation。
类 WebPartZone 从基 WebZone 类和 WebPartZoneBase 类派生其大部分行为;它只添加一个唯一成员,即 ZoneTemplate 属性。 此属性引用对象 ITemplate ,该对象是一个模板,允许页面开发人员使用 <zonetemplate>
.aspx页的声明性标记中的元素静态定义区域中的控件。
可访问性
默认情况下为此控件呈现的标记可能不符合辅助功能标准,例如 Web 内容辅助功能指南 1.0 (WCAG) 优先级 1 准则。 有关此控件的辅助功能支持的详细信息,请参阅 ASP.NET 控件和辅助功能。
构造函数
WebPartZone() |
初始化 WebPartZone 类的新实例。 |
属性
AccessKey |
获取或设置使您得以快速导航到 Web 服务器控件的访问键。 (继承自 WebControl) |
Adapter |
获取控件的浏览器特定适配器。 (继承自 Control) |
AllowLayoutChange |
获取或设置指示区域中 WebPart 控件布局的值是否可以更改的值。 (继承自 WebPartZoneBase) |
AppRelativeTemplateSourceDirectory |
获取或设置包含该控件的 Page 或 UserControl 对象的应用程序相对虚拟目录。 (继承自 Control) |
Attributes |
获取与控件的特性不对应的任意特性(只用于呈现)的集合。 (继承自 WebControl) |
BackColor |
获取或设置 Web 服务器控件的背景色。 (继承自 WebControl) |
BackImageUrl |
获取或设置指向区域的背景图像的 URL。 (继承自 WebZone) |
BindingContainer |
获取包含该控件的数据绑定的控件。 (继承自 Control) |
BorderColor |
获取或设置 WebPartZoneBase 控件的边框颜色。 (继承自 WebPartZoneBase) |
BorderStyle |
获取或设置环绕 WebPartZoneBase 控件的边框的种类。 (继承自 WebPartZoneBase) |
BorderWidth |
获取或设置环绕 WebPartZoneBase 控件的边框的宽度。 (继承自 WebPartZoneBase) |
ChildControlsCreated |
获取一个值,该值指示是否已创建服务器控件的子控件。 (继承自 Control) |
ClientID |
获取由 ASP.NET 生成的 HTML 标记的控件 ID。 (继承自 Control) |
ClientIDMode |
获取或设置用于生成 ClientID 属性值的算法。 (继承自 Control) |
ClientIDSeparator |
获取一个字符值,该值表示 ClientID 属性中使用的分隔符字符。 (继承自 Control) |
CloseVerb |
获取对 WebPartVerb 对象的引用,该对象使最终用户能够关闭区域中的 WebPart 控件。 (继承自 WebPartZoneBase) |
ConnectVerb |
获取对 WebPartVerb 对象的引用,该对象使最终用户能够创建 WebPart 控件之间的连接。 (继承自 WebPartZoneBase) |
Context |
为当前 Web 请求获取与服务器控件关联的 HttpContext 对象。 (继承自 Control) |
Controls |
获取表示 ControlCollection 中的子控件的 CompositeControl 对象。 (继承自 CompositeControl) |
ControlStyle |
获取 Web 服务器控件的样式。 此属性主要由控件开发人员使用。 (继承自 WebControl) |
ControlStyleCreated |
获取一个值,该值指示是否已为 Style 属性创建了 ControlStyle 对象。 此属性主要由控件开发人员使用。 (继承自 WebControl) |
CssClass |
获取或设置由 Web 服务器控件在客户端呈现的级联样式表 (CSS) 类。 (继承自 WebControl) |
DataItemContainer |
如果命名容器实现 IDataItemContainer,则获取对命名容器的引用。 (继承自 Control) |
DataKeysContainer |
如果命名容器实现 IDataKeysControl,则获取对命名容器的引用。 (继承自 Control) |
DeleteVerb |
获取对 WebPartVerb 对象的引用,该对象使最终用户能够删除区域中的 WebPart 控件。 (继承自 WebPartZoneBase) |
DesignMode |
获取一个值,该值指示是否正在使用设计图面上的一个控件。 (继承自 Control) |
DisplayTitle |
获取在某个 WebPartZoneBase 区域本身可见时被用作该区域标题的文本的当前值。 (继承自 WebPartZoneBase) |
DragDropEnabled |
获取指示是否可以 WebPart 将控件拖入和拖出区域的值。 (继承自 WebPartZoneBase) |
DragHighlightColor |
获取或设置环绕 WebPartZoneBase 区域及用户拖动控件时放置提示范围的边框的颜色。 (继承自 WebPartZoneBase) |
EditVerb |
获取对 WebPartVerb 对象的引用,该对象使最终用户能够编辑区域中的 WebPart 控件。 (继承自 WebPartZoneBase) |
EmptyZoneText |
获取或设置在 WebPartZoneBase 控件不包含任何 WebPart 控件时出现的消息。 (继承自 WebPartZoneBase) |
EmptyZoneTextStyle |
获取空区域中的占位符文本的样式特性。 (继承自 WebZone) |
Enabled |
获取或设置一个值,该值指示是否启用 Web 服务器控件。 (继承自 WebControl) |
EnableTheming |
获取或设置一个值,该值指示主题是否应用于该控件。 (继承自 WebControl) |
EnableViewState |
获取或设置一个值,该值指示服务器控件是否向发出请求的客户端保持自己的视图状态以及它所包含的任何子控件的视图状态。 (继承自 Control) |
ErrorStyle |
获取用于呈现在无法加载或创建 WebPart 控件时显示的错误消息的样式特性。 (继承自 WebZone) |
Events |
获取控件的事件处理程序委托列表。 此属性为只读。 (继承自 Control) |
ExportVerb |
获取对 WebPartVerb 对象的引用,该对象使最终用户能够导出区域中每个 WebPart 控件的 XML 定义文件。 (继承自 WebPartZoneBase) |
Font |
获取与 Web 服务器控件关联的字体属性。 (继承自 WebControl) |
FooterStyle |
获取区域的页脚区域内容的样式特性。 (继承自 WebZone) |
ForeColor |
获取或设置 Web 服务器控件的前景色(通常是文本颜色)。 (继承自 WebControl) |
HasAttributes |
获取一个值,该值指示控件是否具有特性集。 (继承自 WebControl) |
HasChildViewState |
获取一个值,该值指示当前服务器控件的子控件是否具有任何已保存的视图状态设置。 (继承自 Control) |
HasFooter |
获取一个值,该值指示区域中是否具有页脚区域。 (继承自 WebPartZoneBase) |
HasHeader |
获取一个值,该值指示区域是否具有页眉区域。 (继承自 WebPartZoneBase) |
HeaderStyle |
获取区域的页眉区域内容的样式特性。 (继承自 WebZone) |
HeaderText |
获取或设置区域的页眉区的文本。 (继承自 WebZone) |
Height |
获取或设置 Web 服务器控件的高度。 (继承自 WebControl) |
HelpVerb |
获取对 WebPartVerb 对象的引用,该对象用于访问区域中 WebPart 控件的“帮助”内容。 (继承自 WebPartZoneBase) |
ID |
获取或设置分配给服务器控件的编程标识符。 (继承自 Control) |
IdSeparator |
获取用于分隔控件标识符的字符。 (继承自 Control) |
IsChildControlStateCleared |
获取一个值,该值指示该控件中包含的控件是否具有控件状态。 (继承自 Control) |
IsEnabled |
获取一个值,该值指示是否启用控件。 (继承自 WebControl) |
IsTrackingViewState |
获取一个值,用于指示服务器控件是否会将更改保存到其视图状态中。 (继承自 Control) |
IsViewStateEnabled |
获取一个值,该值指示是否为该控件启用了视图状态。 (继承自 Control) |
LayoutOrientation |
获取或设置指示区域中的控件是垂直排列还是水平排列的值。 (继承自 WebPartZoneBase) |
LoadViewStateByID |
获取一个值,该值指示控件是否通过 ID 而不是索引参与加载其视图状态。 (继承自 Control) |
MenuCheckImageStyle |
获取应用于出现在选定谓词文本后的谓词菜单文本上的选中标记图像的特性。 (继承自 WebPartZoneBase) |
MenuCheckImageUrl |
获取或设置在区域中每个 WebPart 控件的谓词菜单中被用作选中标记的图像的 URL。 (继承自 WebPartZoneBase) |
MenuLabelHoverStyle |
获取在用户将鼠标指针定位于 WebPart 控件标题栏中的谓词菜单标签上时被应用于该标签的样式特性。 (继承自 WebPartZoneBase) |
MenuLabelStyle |
获取出现在区域中每个 WebPart 控件的标题栏中的谓词下拉菜单的标签的样式信息。 (继承自 WebPartZoneBase) |
MenuLabelText |
获取或设置作为区域中每个 WebPart 控件的标题栏中的谓词下拉菜单的标签样式信息的值。 (继承自 WebPartZoneBase) |
MenuPopupImageUrl |
获取或设置图像的 URL,该图像打开区域中每个 WebPart 控件的标题栏中的谓词下拉菜单。 (继承自 WebPartZoneBase) |
MenuPopupStyle |
获取出现在区域中 WebPart 控件上的下拉谓词菜单的样式特性。 (继承自 WebPartZoneBase) |
MenuVerbHoverStyle |
获取在最终用户将鼠标指针定位在谓词下拉菜单中的某个谓词之上时该谓词的外观的样式信息。 (继承自 WebPartZoneBase) |
MenuVerbStyle |
获取谓词下拉菜单显示时该菜单中谓词的外观的样式信息。 (继承自 WebPartZoneBase) |
MinimizeVerb |
获取对 WebPartVerb 对象的引用,该对象使最终用户能够最小化区域中的 WebPart 控件。 (继承自 WebPartZoneBase) |
NamingContainer |
获取对服务器控件的命名容器的引用,此引用创建唯一的命名空间,以区分具有相同 ID 属性值的服务器控件。 (继承自 Control) |
Padding |
获取或设置区域中包含 WebPart 控件的表的单元格填充特性。 (继承自 WebZone) |
Page |
获取对包含服务器控件的 Page 实例的引用。 (继承自 Control) |
Parent |
获取对页 UI 层次结构中服务器控件的父控件的引用。 (继承自 Control) |
PartChromePadding |
获取或设置 WebPart 控件的内容和此控件的边框之间的距离。 (继承自 WebZone) |
PartChromeStyle |
获取适用于区域所包含的 Web 部件控件的边框的样式属性。 (继承自 WebZone) |
PartChromeType |
获取或设置构成区域所包含的 Web 部件控件的框架的边框类型。 (继承自 WebZone) |
PartStyle |
获取适用于区域所包含的每个 Web 部件控件的边框和内容的样式属性。 (继承自 WebZone) |
PartTitleStyle |
获取区域所包含的每个 Web 部件控件的标题栏内容的样式特性。 (继承自 WebZone) |
RenderClientScript |
获取一个值,该值指示是否在 Web 部件页上呈现客户端脚本。 (继承自 WebZone) |
RenderingCompatibility |
获取一个值,该值指定呈现的 HTML 将与之兼容的 ASP.NET 版本。 (继承自 Control) |
RestoreVerb |
获取对 WebPartVerb 对象的引用,该对象使最终用户能够将区域中的 WebPart 控件还原为正常大小。 (继承自 WebPartZoneBase) |
SelectedPartChromeStyle |
获取区域中选定的 WebPart 控件的外观的样式信息。 (继承自 WebPartZoneBase) |
ShowTitleIcons |
获取或设置指示标题图标是否显示在区域中每个 WebPart 控件的标题栏中的值。 (继承自 WebPartZoneBase) |
Site |
获取容器信息,该容器在呈现于设计图面上时承载当前控件。 (继承自 Control) |
SkinID |
获取或设置要应用于控件的外观。 (继承自 WebControl) |
Style |
获取将在 Web 服务器控件的外部标记上呈现为样式特性的文本特性的集合。 (继承自 WebControl) |
SupportsDisabledAttribute |
获取一个值,该值指示在控件的 |
TabIndex |
获取或设置 Web 服务器控件的选项卡索引。 (继承自 WebControl) |
TagKey |
获取对应于此 Web 服务器控件的 HtmlTextWriterTag 值。 此属性主要由控件开发人员使用。 (继承自 WebZone) |
TagName |
获取控件标记的名称。 此属性主要由控件开发人员使用。 (继承自 WebControl) |
TemplateControl |
获取或设置对包含该控件的模板的引用。 (继承自 Control) |
TemplateSourceDirectory |
获取包含当前服务器控件的 Page 或 UserControl 的虚拟目录。 (继承自 Control) |
TitleBarVerbButtonType |
获取或设置用于 WebPart 控件的标题栏中的谓词的按钮类型。 (继承自 WebPartZoneBase) |
TitleBarVerbStyle |
获取 WebPart 控件的标题栏中的谓词的样式特性。 (继承自 WebPartZoneBase) |
ToolTip |
获取或设置当鼠标指针悬停在 Web 服务器控件上时显示的文本。 (继承自 WebControl) |
UniqueID |
获取服务器控件的唯一的、以分层形式限定的标识符。 (继承自 Control) |
ValidateRequestMode |
获取或设置指示控件是否检查来自浏览器的客户端输入是否具有潜在危险值的值。 (继承自 Control) |
VerbButtonType |
获取或设置与 WebPartZoneBase 区域中存在的谓词关联的按钮类型(当使用较早的浏览器访问时)。 (继承自 WebPartZoneBase) |
VerbStyle |
获取与区域中的 Web 部件控件关联的用户界面 (UI) 谓词的样式特性。 (继承自 WebZone) |
ViewState |
获取状态信息的字典,这些信息使您可以在同一页的多个请求间保存和还原服务器控件的视图状态。 (继承自 Control) |
ViewStateIgnoresCase |
获取一个值,该值指示 StateBag 对象是否不区分大小写。 (继承自 Control) |
ViewStateMode |
获取或设置此控件的视图状态模式。 (继承自 Control) |
Visible |
获取或设置一个值,该值指示服务器控件是否作为 UI 呈现在页上。 (继承自 Control) |
WebPartChrome |
获取对 WebPartChrome 对象的引用,该对象确定区域中 WebPart 控件的外围呈现。 (继承自 WebPartZoneBase) |
WebPartManager |
获取对与 Web 部件页上的 WebPartManager 控件实例关联的 WebZone 控件的引用。 (继承自 WebZone) |
WebParts |
获取区域中包含的 Web 部件控件的集合。 (继承自 WebPartZoneBase) |
WebPartVerbRenderMode |
获取或设置指示应该如何在区域中的 WebPart 控件上呈现谓词的值。 (继承自 WebPartZoneBase) |
Width |
获取或设置 Web 服务器控件的宽度。 (继承自 WebControl) |
ZoneTemplate |
获取或设置对 ITemplate 实例的引用,该实例包含网页标记中声明的控件。 |
方法
事件
CreateVerbs |
在为从 WebPartZoneBase 类派生的区域创建谓词时发生。 (继承自 WebPartZoneBase) |
DataBinding |
当服务器控件绑定到数据源时发生。 (继承自 Control) |
Disposed |
当从内存释放服务器控件时发生,这是请求 ASP.NET 页时服务器控件生存期的最后阶段。 (继承自 Control) |
Init |
当服务器控件初始化时发生;初始化是控件生存期的第一步。 (继承自 Control) |
Load |
当服务器控件加载到 Page 对象中时发生。 (继承自 Control) |
PreRender |
在加载 Control 对象之后、呈现之前发生。 (继承自 Control) |
Unload |
当服务器控件从内存中卸载时发生。 (继承自 Control) |
显式接口实现
扩展方法
FindDataSourceControl(Control) |
返回与指定控件的数据控件关联的数据源。 |
FindFieldTemplate(Control, String) |
返回指定控件的命名容器中指定列的字段模板。 |
FindMetaTable(Control) |
返回包含数据控件的元表对象。 |
GetDefaultValues(INamingContainer) |
为指定数据控件获取默认值的集合。 |
GetMetaTable(INamingContainer) |
为指定数据控件获取表元数据。 |
SetMetaTable(INamingContainer, MetaTable) |
为指定数据控件设置表元数据。 |
SetMetaTable(INamingContainer, MetaTable, IDictionary<String,Object>) |
为指定数据控件设置表元数据和默认值映射。 |
SetMetaTable(INamingContainer, MetaTable, Object) |
为指定数据控件设置表元数据和默认值映射。 |
TryGetMetaTable(INamingContainer, MetaTable) |
确定表元数据是否可用。 |
EnableDynamicData(INamingContainer, Type) |
为指定数据控件启用动态数据行为。 |
EnableDynamicData(INamingContainer, Type, IDictionary<String,Object>) |
为指定数据控件启用动态数据行为。 |
EnableDynamicData(INamingContainer, Type, Object) |
为指定数据控件启用动态数据行为。 |