Декларативный синтаксис серверного веб-элемента управления PageCatalogPart
Предоставляет каталог, в котором хранятся ссылки на все элементы управления WebPart (и другие элементы сервера, содержащиеся в зонах WebPartZoneBase), которые пользователь закрыл на одной странице веб-частей, что позволяет пользователю вновь добавлять на страницу закрытые элементы управления.
<asp:PageCatalogPart
AccessKey="string"
BackColor="color name|#dddddd"
BackImageUrl="uri"
BorderColor="color name|#dddddd"
BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|Ridge|
Inset|Outset"
BorderWidth="size"
ChromeState="Normal|Minimized"
ChromeType="Default|TitleAndBorder|None|TitleOnly|BorderOnly"
CssClass="string"
DefaultButton="string"
Description="string"
Direction="NotSet|LeftToRight|RightToLeft"
Enabled="True|False"
EnableTheming="True|False"
EnableViewState="True|False"
Font-Bold="True|False"
Font-Italic="True|False"
Font-Names="string"
Font-Overline="True|False"
Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|
Large|X-Large|XX-Large"
Font-Strikeout="True|False"
Font-Underline="True|False"
ForeColor="color name|#dddddd"
GroupingText="string"
Height="size"
HorizontalAlign="NotSet|Left|Center|Right|Justify"
ID="string"
OnDataBinding="DataBinding event handler"
OnDisposed="Disposed event handler"
OnInit="Init event handler"
OnLoad="Load event handler"
OnPreRender="PreRender event handler"
OnUnload="Unload event handler"
runat="server"
ScrollBars="None|Horizontal|Vertical|Both|Auto"
SkinID="string"
Style="string"
TabIndex="integer"
Title="string"
ToolTip="string"
Visible="True|False"
Width="size"
Wrap="True|False"
/>
Заметки
Класс PageCatalogPart служит для очень конкретной цели на странице веб-частей: он действует как каталог страницы для сохранения всех закрытых элементов управления, ранее добавленных на страницу, что позволяет пользователю снова добавлять их на страницу. Этот элемент управления виден, только когда веб-страница находится в режиме отображения каталога, который позволяет добавлять элементы управления на страницу и удалять их со страницы. Чтобы предоставить пользователям большую гибкость в закрытии и повторном открытии элементов управления на странице, добавьте на страницу элемент управления PageCatalogPart. Если пользователям запрещено закрывать элементы управления на странице, необходимости добавлять на страницу элемент управления PageCatalogPart нет.
Дополнительные сведения о PageCatalogPart и других элементах управления зоны веб-частей см. в разделе Элементы управления веб-частей ASP.NET.
Пример
В следующем примере кода демонстрируется использование элемента управления PageCatalogPart. Веб-страница разрешает пользователям добавлять элемент управления Calendar или CreateUserWizard в зону веб-частей.
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
mgr1.DisplayMode = WebPartManager.BrowseDisplayMode
End Sub
Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs)
mgr1.DisplayMode = WebPartManager.CatalogDisplayMode
End Sub
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
Label1.Text = "Scope is: " _
+ mgr1.Personalization.Scope.ToString()
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="head1" runat="server">
<title>Web Parts Declarative Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:WebPartManager ID="mgr1" runat="server">
<Personalization InitialScope="Shared" Enabled="True" />
</asp:WebPartManager>
<asp:WebPartZone ID="WebPartZone1" runat="server"
EmptyZoneText="No parts to show.">
<ZoneTemplate>
</ZoneTemplate>
<CloseVerb Text="Close This Part" />
<MinimizeVerb Text="Minimize This Part" />
<EditVerb Text="Edit This Part" />
</asp:WebPartZone>
<asp:CatalogZone ID="CatalogZone1" runat="server" >
<ZoneTemplate>
<asp:PageCatalogPart ID="PageCatalogPart1" runat="server" />
<asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1"
runat="server">
<WebPartsTemplate>
<asp:Calendar id="Calendar1" runat="server" />
<asp:CreateUserWizard ID="CreateUserWizard1"
runat="server" />
</WebPartsTemplate>
</asp:DeclarativeCatalogPart>
<asp:ImportCatalogPart ID="ImportCatalogPart1" runat="server"/>
</ZoneTemplate>
</asp:CatalogZone>
<hr />
<asp:Button ID="Button1" runat="server"
Text="Browse Mode" OnClick="Button1_Click" />
<asp:Button ID="Button2" runat="server"
Text="Catalog Mode" OnClick="Button2_Click" /><br />
<asp:Label ID="Label1" runat="server" Text="" />
</div>
</form>
</body>
</html>
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
protected void Button1_Click(object sender, EventArgs e)
{
mgr1.DisplayMode = WebPartManager.BrowseDisplayMode;
}
protected void Button2_Click(object sender, EventArgs e)
{
mgr1.DisplayMode = WebPartManager.CatalogDisplayMode;
}
protected void Page_Load(object sender, EventArgs e)
{
Label1.Text = "Scope is: "
+ mgr1.Personalization.Scope.ToString();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="head1" runat="server">
<title>Web Parts Declarative Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:WebPartManager ID="mgr1" runat="server">
<Personalization InitialScope="Shared" Enabled="True" />
</asp:WebPartManager>
<asp:WebPartZone ID="WebPartZone1" runat="server"
EmptyZoneText="No parts to show.">
<ZoneTemplate>
</ZoneTemplate>
<CloseVerb Text="Close This Part" />
<MinimizeVerb Text="Minimize This Part" />
<EditVerb Text="Edit This Part" />
</asp:WebPartZone>
<asp:CatalogZone ID="CatalogZone1" runat="server" >
<ZoneTemplate>
<asp:PageCatalogPart ID="PageCatalogPart1" runat="server" />
<asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1"
runat="server">
<WebPartsTemplate>
<asp:Calendar id="Calendar1" runat="server" />
<asp:CreateUserWizard ID="CreateUserWizard1"
runat="server" />
</WebPartsTemplate>
</asp:DeclarativeCatalogPart>
<asp:ImportCatalogPart ID="ImportCatalogPart1" runat="server"/>
</ZoneTemplate>
</asp:CatalogZone>
<hr />
<asp:Button ID="Button1" runat="server"
Text="Browse Mode" OnClick="Button1_Click" />
<asp:Button ID="Button2" runat="server"
Text="Catalog Mode" OnClick="Button2_Click" /><br />
<asp:Label ID="Label1" runat="server" Text="" />
</div>
</form>
</body>
</html>