WebPart.AllowClose Eigenschap
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of een eindgebruiker een WebPart besturingselement op een webpagina kan sluiten.
public:
virtual property bool AllowClose { bool get(); void set(bool value); };
[System.Web.UI.Themeable(false)]
[System.Web.UI.WebControls.WebParts.Personalizable(System.Web.UI.WebControls.WebParts.PersonalizationScope.Shared)]
public virtual bool AllowClose { get; set; }
[<System.Web.UI.Themeable(false)>]
[<System.Web.UI.WebControls.WebParts.Personalizable(System.Web.UI.WebControls.WebParts.PersonalizationScope.Shared)>]
member this.AllowClose : bool with get, set
Public Overridable Property AllowClose As Boolean
Waarde van eigenschap
true als het besturingselement op een webpagina kan worden gesloten; anders, false. De standaardwaarde is true.
- Kenmerken
Voorbeelden
In het volgende codevoorbeeld ziet u hoe u de standaardinstelling van de AllowClose eigenschap voor een aangepast besturingselement WebPart kunt wijzigen, zodat deze niet kan worden gesloten.
Het eerste deel van dit voorbeeld bevat de code voor een aangepast besturingselement WebPart met de naam TextDisplayWebPart. Houd er rekening mee dat in de constructor van het aangepaste besturingselement de TextDisplayWebPart.AllowClose eigenschap is ingesteld op false, wat het effect heeft dat gebruikers het besturingselement niet kunnen sluiten op een webpagina. Dit betekent dat het afsluitende werkwoord in het menu werkwoorden van het besturingselement wordt uitgeschakeld voor gebruikers. Als u het codevoorbeeld wilt uitvoeren, moet u deze broncode compileren. U kunt deze expliciet compileren en de resulterende assembly in de map Bin van uw website of de globale assemblycache plaatsen. U kunt de broncode ook in de map App_Code van uw site plaatsen, waar deze dynamisch wordt gecompileerd tijdens runtime. In dit codevoorbeeld wordt ervan uitgegaan dat u de broncode compileert in een assembly, deze in een Bin-submap van uw webtoepassing plaatst en naar de assembly verwijst met een Register instructie op uw webpagina. Zie Walkthrough: Een aangepast webserverbeheer ontwikkelen en gebruiken voor een overzicht van beide methoden voor het compileren.
using System;
using System.Security.Permissions;
using System.Web;
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 TextDisplayWebPart : WebPart
{
private String _contentText = null;
TextBox input;
Label DisplayContent;
public TextDisplayWebPart()
{
this.AllowClose = false;
}
[Personalizable(), WebBrowsable]
public String ContentText
{
get { return _contentText; }
set { _contentText = value; }
}
protected override void CreateChildControls()
{
Controls.Clear();
DisplayContent = new Label();
DisplayContent.BackColor =
System.Drawing.Color.LightBlue;
DisplayContent.Text = this.ContentText;
this.Controls.Add(DisplayContent);
input = new TextBox();
this.Controls.Add(input);
Button update = new Button();
update.Text = "Set Label Content";
update.Click += new EventHandler(this.submit_Click);
this.Controls.Add(update);
ChildControlsCreated = true;
}
private void submit_Click(object sender, EventArgs e)
{
// Update the label string.
if (!string.IsNullOrEmpty(input.Text))
{
_contentText = input.Text + @"<br />";
input.Text = String.Empty;
DisplayContent.Text = this.ContentText;
}
}
}
}
Imports System.Security.Permissions
Imports System.Web
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.WebParts
Namespace Samples.AspNet.VB.Controls
<AspNetHostingPermission(SecurityAction.Demand, _
Level := AspNetHostingPermissionLevel.Minimal)> _
<AspNetHostingPermission(SecurityAction.InheritanceDemand, _
Level := AspNetHostingPermissionLevel.Minimal)> _
Public Class TextDisplayWebPart
Inherits WebPart
Private _contentText As String = Nothing
Private input As TextBox
Private DisplayContent As Label
Public Sub New()
Me.AllowClose = False
End Sub
<Personalizable(), WebBrowsable()> _
Public Property ContentText() As String
Get
Return _contentText
End Get
Set
_contentText = value
End Set
End Property
Protected Overrides Sub CreateChildControls()
Controls.Clear()
DisplayContent = New Label()
DisplayContent.Text = Me.ContentText
DisplayContent.BackColor = _
System.Drawing.Color.LightBlue
Me.Controls.Add(DisplayContent)
input = New TextBox()
Me.Controls.Add(input)
Dim update As New Button()
update.Text = "Set Label Content"
AddHandler update.Click, AddressOf Me.submit_Click
Me.Controls.Add(update)
ChildControlsCreated = True
End Sub
Private Sub submit_Click(ByVal sender As Object, _
ByVal e As EventArgs)
' Update the label string.
If input.Text <> String.Empty Then
_contentText = input.Text & "<br />"
input.Text = String.Empty
DisplayContent.Text = Me.ContentText
End If
End Sub
End Class
End Namespace
In het tweede deel van het voorbeeld ziet u hoe u naar het besturingselement TextDisplayWebPart in een ASP.NET webpagina verwijst. In het element dat naar het <aspSample:TextDisplayWebPart> besturingselement verwijst, kunt u ook de waarde van de eigenschap wijzigen die is ingesteld door de constructor van het besturingselement. Als u wilt toestaan dat het besturingselement wordt gesloten, voegt u gewoon een AllowClose="true" kenmerk toe aan het element in de declaratieve markeringen.
<%@ page language="C#" %>
<%@ register tagprefix="aspSample"
Namespace="Samples.AspNet.CS.Controls"
Assembly="TextDisplayWebPartCS"%>
<!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 id="Head1" runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="Form1" runat="server">
<asp:webpartmanager id="WebPartManager1" runat="server" />
<asp:webpartzone
id="WebPartZone1"
runat="server"
title="Zone 1"
PartChromeType="TitleAndBorder">
<parttitlestyle font-bold="true" ForeColor="#3300cc" />
<partstyle
borderwidth="1px"
borderstyle="Solid"
bordercolor="#81AAF2" />
<zonetemplate>
<aspSample:TextDisplayWebPart
runat="server"
id="textwebpart"
title = "Text Content WebPart" />
</zonetemplate>
</asp:webpartzone>
</form>
</body>
</html>
<%@ page language="VB" %>
<%@ register tagprefix="aspSample"
Namespace="Samples.AspNet.VB.Controls"
Assembly="TextDisplayWebPartVB"%>
<!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 id="Head1" runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="Form1" runat="server">
<asp:webpartmanager id="WebPartManager1" runat="server" />
<asp:webpartzone
id="WebPartZone1"
runat="server"
title="Zone 1"
PartChromeType="TitleAndBorder">
<parttitlestyle font-bold="true" ForeColor="#3300cc" />
<partstyle
borderwidth="1px"
borderstyle="Solid"
bordercolor="#81AAF2" />
<zonetemplate>
<aspSample:TextDisplayWebPart
runat="server"
id="textwebpart"
title = "Text Content WebPart" />
</zonetemplate>
</asp:webpartzone>
</form>
</body>
</html>
Opmerkingen
Nadat een gebruiker een WebPart besturingselement op een webpagina heeft gesloten, is het besturingselement niet meer zichtbaar of beschikbaar op de pagina. Het gesloten besturingselement wordt toegevoegd aan de paginacatalogus, een webonderdelenentiteit waarin een verwijzing naar het besturingselement wordt opgeslagen. Als een ontwikkelaar een PageCatalogPart besturingselement toevoegt aan de pagina binnen een CatalogZone besturingselement, kunnen gebruikers de pagina overschakelen naar de weergavemodus van de catalogus, het gesloten besturingselement in de paginacatalogus selecteren en het weer toevoegen aan de pagina.
Note
Een gesloten WebPart besturingselement kan programmatisch worden toegevoegd aan een pagina of door een gebruiker die het gesloten besturingselement in de paginacatalogus selecteert wanneer de pagina zich in de weergavemodus van de catalogus bevindt.
Het sluiten van een WebPart besturingselement verschilt van het verwijderen ervan. Een gesloten besturingselement kan weer worden toegevoegd aan een pagina, terwijl een verwijderd besturingselement permanent wordt verwijderd. Zie de DeleteWebPart methode voor meer informatie over het verwijderen van besturingselementen. Het sluiten van een besturingselement verschilt ook van het verbergen ervan. Een besturingselement dat verborgen is, is nog steeds aanwezig op de pagina, neemt nog steeds deel aan levenscyclusgebeurtenissen van de pagina en is alleen verborgen in de weergave van de gebruiker, maar er wordt zelfs geen gesloten besturingselement weergegeven op een pagina.
Zowel statische als dynamische WebPart besturingselementen (statische besturingselementen worden gedeclareerd in de opmaak van een pagina, terwijl dynamische besturingselementen programmatisch worden toegevoegd) kunnen worden gesloten.
Als een ontwikkelaar de AllowClose eigenschap falseinstelt, wordt er geen sluitwoord weergegeven in het besturingselement en kan de gebruiker het besturingselement niet sluiten.
Deze eigenschap kan niet worden ingesteld op thema's of opmaakmodellen. Zie ThemeableAttribute en ASP.NET Thema's en skins voor meer informatie.
Het persoonlijke bereik van deze eigenschap is ingesteld op Shared en kan alleen worden gewijzigd door geautoriseerde gebruikers. Zie en Overzicht van persoonlijke instellingen voor webonderdelen voor meer informatiePersonalizableAttribute.