Syntaxe déclarative des contrôles serveur Web PageCatalogPart
Fournit un catalogue qui conserve les références à tous les contrôles WebPart (et les autres contrôles serveur contenus dans les zones WebPartZoneBase) qu'un utilisateur a fermés sur une page WebPart unique pour permettre aux utilisateurs d'ajouter les contrôles fermés à la page.
<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"
/>
Notes
La classe PageCatalogPart a une fonction très spécifique sur une page WebPart : elle joue le rôle de catalogue de pages pour gérer les contrôles précédemment ajoutés à la page fermée par un utilisateur, afin que les utilisateurs puissent les ajouter à la page. Ce contrôle est visible uniquement lorsqu'une page Web est en mode d'affichage catalogue, c'est-à-dire un affichage spécial qui permet aux utilisateurs d'ajouter et de supprimer des contrôles de la page. Pour fournir aux utilisateurs la flexibilité de la fermeture et de la réouverture des contrôles sur votre page, ajoutez un contrôle PageCatalogPart à la page. Si votre page ne permet pas aux utilisateurs de fermer des contrôles, il n'est pas nécessaire d'y ajouter un contrôle PageCatalogPart.
Pour plus d'informations sur les contrôles PageCatalogPart et WebParts, consultez Contrôles WebPart ASP.NET.
Exemple
L'exemple de code suivant illustre l'utilisation du contrôle PageCatalogPart. La page Web permet à un utilisateur d'ajouter un contrôle Calendar ou CreateUserWizard à une zone WebParts.
<%@ 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>