Sdílet prostřednictvím


WebPart.AllowClose Vlastnost

Definice

Získá nebo nastaví hodnotu označující, zda koncový uživatel může zavřít WebPart ovládací prvek na webové stránce.

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

Hodnota vlastnosti

truelze-li ovládací prvek zavřít na webové stránce; v opačném případě . false Výchozí hodnota je true.

Atributy

Příklady

Následující příklad kódu ukazuje, jak změnit výchozí nastavení AllowClose vlastnosti pro vlastní WebPart ovládací prvek, aby jej nelze zavřít.

První část tohoto příkladu obsahuje kód pro vlastní WebPart ovládací prvek s názvem TextDisplayWebPart. Všimněte si, TextDisplayWebPart.AllowClose že v konstruktoru vlastního ovládacího prvku je vlastnost nastavena na false, což má za následek zabránění uživatelům v zavření ovládacího prvku na webové stránce. To znamená, že příkaz zavřít v nabídce sloves ovládacího prvku bude pro uživatele zakázán. Aby se příklad kódu spustil, musíte tento zdrojový kód zkompilovat. Můžete ho explicitně zkompilovat a vložit výsledné sestavení do složky Bin webu nebo globální mezipaměti sestavení (GPA). Případně můžete zdrojový kód umístit do složky App_Code webu, kde se bude dynamicky kompilovat za běhu. Tento příklad kódu předpokládá, že zkompilujete zdrojový kód do sestavení, umístíte ho do podsložky Bin webové aplikace a na sestavení odkazujete direktivou Register na webové stránce. Návod, který ukazuje obě metody kompilace, najdete v tématu Návod: Vývoj a použití vlastního ovládacího prvku webového serveru.

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

Druhá část příkladu ukazuje, jak odkazovat na TextDisplayWebPart ovládací prvek na webové stránce ASP.NET. Všimněte si, že v elementu <aspSample:TextDisplayWebPart> , který odkazuje na ovládací prvek, můžete také změnit hodnotu vlastnosti nastavené konstruktorem ovládacího prvku. Chcete-li povolit ovládací prvek zavřít, jednoduše přidejte AllowClose="true" atribut do elementu deklarativní značky.

<%@ 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>

Poznámky

Poté, co uživatel zavře WebPart ovládací prvek na webové stránce, ovládací prvek již není viditelný nebo dostupný na stránce. Uzavřený ovládací prvek je přidán do katalogu stránek, entita webových částí, která ukládá odkaz na ovládací prvek. Pokud vývojář přidá PageCatalogPart ovládací prvek na stránku v rámci CatalogZone ovládacího prvku, uživatelé mohou přepnout stránku do režimu zobrazení katalogu, vybrat zavřený ovládací prvek v katalogu stránek a přidat ho zpět na stránku.

Poznámka

Zavřený WebPart ovládací prvek může být přidán zpět na stránku buď programově, nebo uživatelem, který vybere zavřený ovládací prvek z katalogu stránek, když je stránka v režimu zobrazení katalogu.

Zavření WebPart ovládacího prvku se liší od jeho odstranění. Uzavřený ovládací prvek lze přidat zpět na stránku, zatímco odstraněný ovládací prvek je trvale odebrán. Další informace o odstraňování ovládacích prvků najdete v DeleteWebPart metodě . Zavření ovládacího prvku se také liší od jeho skrytí. Ovládací prvek, který je skrytý, je na stránce stále přítomen, stále se účastní událostí životního cyklu stránky a je pouze skrytý v zobrazení uživatele, ale uzavřený ovládací prvek se dokonce na stránce nevykreslí.

Statické i dynamické WebPart ovládací prvky (statické ovládací prvky jsou deklarovány ve značkách stránky, zatímco dynamické ovládací prvky se přidávají programově) je možné zavřít.

Pokud vývojář nastaví AllowClose vlastnost na false, příkaz close se v ovládacím prvku nezobrazí a uživatel nemůže ovládací prvek zavřít.

Tuto vlastnost nelze nastavit pomocí motivů nebo šablon stylů. Další informace najdete v tématu ThemeableAttribute a ASP.NET Motivy a skiny.

Rozsah přizpůsobení této vlastnosti je nastaven na Shared hodnotu a může být upraven pouze autorizovanými uživateli. Další informace najdete v tématech PersonalizableAttribute a Přehled přizpůsobení webových částí.

Platí pro

Viz také