PageCatalogPart Clase

Definición

Proporciona un catálogo que mantiene las referencias a todos los controles WebPart (y a otros controles de servidor contenidos en zonas WebPartZoneBase) que un usuario ha cerrado en una sola página de elementos web y permite a los usuarios volver a agregar los controles cerrados a la página. Esta clase no puede heredarse.

public ref class PageCatalogPart sealed : System::Web::UI::WebControls::WebParts::CatalogPart
public sealed class PageCatalogPart : System.Web.UI.WebControls.WebParts.CatalogPart
type PageCatalogPart = class
    inherit CatalogPart
Public NotInheritable Class PageCatalogPart
Inherits CatalogPart
Herencia

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar el PageCatalogPart control mediante declaración en una página web. Este ejemplo tiene cuatro partes:

  • Control de usuario que permite cambiar los modos de visualización en una página de elementos web.

  • Página web que contiene un CatalogZone control, un PageCatalogPart control y un DeclarativeCatalogPart control .

  • Un archivo de código fuente que contiene dos controles personalizados WebPart .

  • Explicación de cómo funciona el ejemplo al cargar la página en un explorador.

La primera parte de este ejemplo de código es el control de usuario que permite a los usuarios cambiar los modos de presentación en una página web. Para obtener más información sobre los modos de presentación y una descripción del código fuente de este control, vea Walkthrough: Changing Display Modes on a Web Parts Page.

<%@ control language="C#" classname="DisplayModeMenuCS"%>
<script runat="server">
  
 // Use a field to reference the current WebPartManager.
  WebPartManager _manager;

  void Page_Init(object sender, EventArgs e)
  {
    Page.InitComplete += new EventHandler(InitComplete);
    
  }  

  void InitComplete(object sender, System.EventArgs e)
  {
    _manager = WebPartManager.GetCurrentWebPartManager(Page);

    String browseModeName = WebPartManager.BrowseDisplayMode.Name;

    // Fill the dropdown with the names of supported display modes.
    foreach (WebPartDisplayMode mode in _manager.SupportedDisplayModes)
    {
      String modeName = mode.Name;
      // Make sure a mode is enabled before adding it.
      if (mode.IsEnabled(_manager))
      {
        ListItem item = new ListItem(modeName, modeName);
        DisplayModeDropdown.Items.Add(item);
      }
    }

    // If shared scope is allowed for this user, display the scope-switching
    // UI and select the appropriate radio button for the current user scope.
    if (_manager.Personalization.CanEnterSharedScope)
    {
      Panel2.Visible = true;
      if (_manager.Personalization.Scope == PersonalizationScope.User)
        RadioButton1.Checked = true;
      else
        RadioButton2.Checked = true;
    }
    
  }
 
  // Change the page to the selected display mode.
  void DisplayModeDropdown_SelectedIndexChanged(object sender, EventArgs e)
  {
    String selectedMode = DisplayModeDropdown.SelectedValue;

    WebPartDisplayMode mode = _manager.SupportedDisplayModes[selectedMode];
    if (mode != null)
      _manager.DisplayMode = mode;
  }

  // Set the selected item equal to the current display mode.
  void Page_PreRender(object sender, EventArgs e)
  {
    ListItemCollection items = DisplayModeDropdown.Items;
    int selectedIndex = 
      items.IndexOf(items.FindByText(_manager.DisplayMode.Name));
    DisplayModeDropdown.SelectedIndex = selectedIndex;
  }

  // Reset all of a user's personalization data for the page.
  protected void LinkButton1_Click(object sender, EventArgs e)
  {
    _manager.Personalization.ResetPersonalizationState();
  }

  // If not in User personalization scope, toggle into it.
  protected void RadioButton1_CheckedChanged(object sender, EventArgs e)
  {
    if (_manager.Personalization.Scope == PersonalizationScope.Shared)
      _manager.Personalization.ToggleScope();
  }

  // If not in Shared scope, and if user is allowed, toggle the scope.
  protected void RadioButton2_CheckedChanged(object sender, EventArgs e)
  {
    if (_manager.Personalization.CanEnterSharedScope && 
        _manager.Personalization.Scope == PersonalizationScope.User)
      _manager.Personalization.ToggleScope();
  }
</script>
<div>
  <asp:Panel ID="Panel1" runat="server" 
    Borderwidth="1" 
    Width="230" 
    BackColor="lightgray"
    Font-Names="Verdana, Arial, Sans Serif" >
    <asp:Label ID="Label1" runat="server" 
      Text=" Display Mode" 
      Font-Bold="true"
      Font-Size="8"
      Width="120" AssociatedControlID="DisplayModeDropdown" />
    <asp:DropDownList ID="DisplayModeDropdown" runat="server"  
      AutoPostBack="true" 
      Width="120"
      OnSelectedIndexChanged="DisplayModeDropdown_SelectedIndexChanged" />
    <asp:LinkButton ID="LinkButton1" runat="server"
      Text="Reset User State" 
      ToolTip="Reset the current user's personalization data for the page."
      Font-Size="8" 
      OnClick="LinkButton1_Click" />
    <asp:Panel ID="Panel2" runat="server" 
      GroupingText="Personalization Scope"
      Font-Bold="true"
      Font-Size="8" 
      Visible="false" >
      <asp:RadioButton ID="RadioButton1" runat="server" 
        Text="User" 
        AutoPostBack="true"
        GroupName="Scope" OnCheckedChanged="RadioButton1_CheckedChanged" />
      <asp:RadioButton ID="RadioButton2" runat="server" 
        Text="Shared" 
        AutoPostBack="true"
        GroupName="Scope" 
        OnCheckedChanged="RadioButton2_CheckedChanged" />
    </asp:Panel>
  </asp:Panel>
</div>
<%@ control language="vb" classname="DisplayModeMenuVB"%>
<script runat="server">
  ' Use a field to reference the current WebPartManager.
  Dim _manager As WebPartManager

  Sub Page_Init(ByVal sender As Object, ByVal e As EventArgs)
    AddHandler Page.InitComplete, AddressOf InitComplete
  End Sub

  Sub InitComplete(ByVal sender As Object, ByVal e As System.EventArgs)
    _manager = WebPartManager.GetCurrentWebPartManager(Page)
      
    Dim browseModeName As String = WebPartManager.BrowseDisplayMode.Name
      
    ' Fill the dropdown with the names of supported display modes.
    Dim mode As WebPartDisplayMode
    For Each mode In _manager.SupportedDisplayModes
      Dim modeName As String = mode.Name
      ' Make sure a mode is enabled before adding it.
      If mode.IsEnabled(_manager) Then
        Dim item As New ListItem(modeName, modeName)
        DisplayModeDropdown.Items.Add(item)
      End If
    Next mode
      
    ' If shared scope is allowed for this user, display the scope-switching
    ' UI and select the appropriate radio button for the current user scope.
    If _manager.Personalization.CanEnterSharedScope Then
      Panel2.Visible = True
      If _manager.Personalization.Scope = PersonalizationScope.User Then
        RadioButton1.Checked = True
      Else
        RadioButton2.Checked = True
      End If
    End If
   
  End Sub

  ' Change the page to the selected display mode.
  Sub DisplayModeDropdown_SelectedIndexChanged(ByVal sender As Object, _
    ByVal e As EventArgs)
    
    Dim selectedMode As String = DisplayModeDropdown.SelectedValue   
    Dim mode As WebPartDisplayMode = _
      _manager.SupportedDisplayModes(selectedMode)
    If Not (mode Is Nothing) Then
      _manager.DisplayMode = mode
    End If

  End Sub
   
  ' Set the selected item equal to the current display mode.
  Sub Page_PreRender(ByVal sender As Object, ByVal e As EventArgs)
    Dim items As ListItemCollection = DisplayModeDropdown.Items
    Dim selectedIndex As Integer = _
      items.IndexOf(items.FindByText(_manager.DisplayMode.Name))
    DisplayModeDropdown.SelectedIndex = selectedIndex

  End Sub

  ' Reset all of a user's personalization data for the page.
  Protected Sub LinkButton1_Click(ByVal sender As Object, _
    ByVal e As EventArgs)
    
    _manager.Personalization.ResetPersonalizationState()
    
  End Sub

  ' If not in User personalization scope, toggle into it.
  Protected Sub RadioButton1_CheckedChanged(ByVal sender As Object, _
    ByVal e As EventArgs)
    
    If _manager.Personalization.Scope = PersonalizationScope.Shared Then
      _manager.Personalization.ToggleScope()
    End If

  End Sub
   
  ' If not in Shared scope, and if user is allowed, toggle the scope.
  Protected Sub RadioButton2_CheckedChanged(ByVal sender As Object, _
    ByVal e As EventArgs)
    
    If _manager.Personalization.CanEnterSharedScope AndAlso _
      _manager.Personalization.Scope = PersonalizationScope.User Then
      _manager.Personalization.ToggleScope()
    End If

  End Sub

</script>
<div>
  <asp:Panel ID="Panel1" runat="server" 
    Borderwidth="1" 
    Width="230" 
    BackColor="lightgray"
    Font-Names="Verdana, Arial, Sans Serif" >
    <asp:Label ID="Label1" runat="server" 
      Text=" Display Mode" 
      Font-Bold="true"
      Font-Size="8"
      Width="120" 
      AssociatedControlID="DisplayModeDropdown"/>
    <asp:DropDownList ID="DisplayModeDropdown" runat="server"  
      AutoPostBack="true" 
      Width="120"
      OnSelectedIndexChanged="DisplayModeDropdown_SelectedIndexChanged" />
    <asp:LinkButton ID="LinkButton1" runat="server"
      Text="Reset User State" 
      ToolTip="Reset the current user's personalization data for the page."
      Font-Size="8" 
      OnClick="LinkButton1_Click" />
    <asp:Panel ID="Panel2" runat="server" 
      GroupingText="Personalization Scope"
      Font-Bold="true"
      Font-Size="8" 
      Visible="false" >
      <asp:RadioButton ID="RadioButton1" runat="server" 
        Text="User" 
        AutoPostBack="true"
        GroupName="Scope" OnCheckedChanged="RadioButton1_CheckedChanged" />
      <asp:RadioButton ID="RadioButton2" runat="server" 
        Text="Shared" 
        AutoPostBack="true"
        GroupName="Scope" 
        OnCheckedChanged="RadioButton2_CheckedChanged" />
    </asp:Panel>
  </asp:Panel>
</div>

La segunda parte del ejemplo de código es la página web. En la parte superior de la página hay dos register directivas, una para el control de usuario y otra para el componente compilado que contiene los dos controles personalizados WebPart . Observe que la página tiene una referencia declarativa al PageCatalogPart control, anidada dentro de la jerarquía adecuada de elementos declarativos, tal como se describe en la sección Comentarios de este tema. También hay un <asp:declarativecatalogpart> elemento , que contiene referencias para un control estándar ASP.NET Calendar y los dos controles personalizados WebPart , todos ellos son los controles que los usuarios pueden seleccionar en el catálogo.

<%@ page language="c#" %>
<%@ register TagPrefix="uc1" 
  TagName="DisplayModeMenuCS" 
  Src="DisplayModeMenuCS.ascx" %>
<%@ register tagprefix="aspSample" 
  Namespace="Samples.AspNet.CS.Controls" 
  Assembly="UserInfoWebPartCS" %>

<!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>
      PageCatalogPart Control
    </title>
  </head>
  <body>
    <form id="form1" runat="server">
      <asp:webpartmanager id="WebPartManager1" runat="server"  />
      <uc1:DisplayModeMenuCS ID="DisplayModeMenu1" runat="server" />
      <asp:webpartzone id="zone1" runat="server" >
        <PartTitleStyle BorderWidth="1" 
          Font-Names="Verdana, Arial"
          Font-Size="110%"
          BackColor="LightBlue" />
        <zonetemplate>
          <asp:BulletedList ID="BulletedList1" 
            Runat="server"
            DisplayMode="HyperLink"
            Title="Favorites">
            <asp:ListItem Value="http://msdn.microsoft.com">
              MSDN
            </asp:ListItem>
            <asp:ListItem Value="http://www.asp.net">
              ASP.NET
            </asp:ListItem>
            <asp:ListItem Value="http://www.msn.com">
              MSN
            </asp:ListItem>
          </asp:BulletedList>
        </zonetemplate>
      </asp:webpartzone> 
      <asp:CatalogZone ID="CatalogZone1" runat="server">
        <ZoneTemplate>
          <asp:PageCatalogPart ID="PageCatalogPart1" runat="server" 
            Title="My Page Catalog" 
            ChromeType="Titleonly" />
          <asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1"  
            runat="server" 
            Description="Contains a user control with Web Parts and 
              an ASP.NET Calendar control.">
            <WebPartsTemplate>
              <asp:Calendar ID="Calendar1" runat="server" 
                Title="My Calendar" 
                Description="ASP.NET Calendar control used as a personal calendar." />
              <aspSample:UserInfoWebPart 
                runat="server"   
                id="userinfo1" 
                title = "User Information WebPart"
                Description ="Contains custom, editable user information 
                  for display on a page." />
              <aspSample:TextDisplayWebPart 
                runat="server"   
                id="TextDisplayWebPart1" 
                title = "Text Display WebPart" 
                Description="Contains a label that users can dynamically update." />
            </WebPartsTemplate>              
          </asp:DeclarativeCatalogPart>
        </ZoneTemplate>
      </asp:CatalogZone>
    </form>
  </body>
</html>
<%@ page language="VB" %>
<%@ register TagPrefix="uc1" 
  TagName="DisplayModeMenuVB" 
  Src="DisplayModeMenuVB.ascx" %>
<%@ register tagprefix="aspSample" 
  Namespace="Samples.AspNet.VB.Controls" 
  Assembly="UserInfoWebPartVB" %>

<!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>
      PageCatalogPart Control
    </title>
  </head>
  <body>
    <form id="form1" runat="server">
      <asp:webpartmanager id="WebPartManager1" runat="server"  />
      <uc1:DisplayModeMenuVB ID="DisplayModeMenu1" runat="server" />
      <asp:webpartzone id="zone1" runat="server" >
        <PartTitleStyle BorderWidth="1" 
          Font-Names="Verdana, Arial"
          Font-Size="110%"
          BackColor="LightBlue" />
        <zonetemplate>
          <asp:BulletedList ID="BulletedList1" 
            Runat="server"
            DisplayMode="HyperLink"
            Title="Favorites">
            <asp:ListItem Value="http://msdn.microsoft.com">
              MSDN
            </asp:ListItem>
            <asp:ListItem Value="http://www.asp.net">
              ASP.NET
            </asp:ListItem>
            <asp:ListItem Value="http://www.msn.com">
              MSN
            </asp:ListItem>
          </asp:BulletedList>
        </zonetemplate>
      </asp:webpartzone> 
      <asp:CatalogZone ID="CatalogZone1" runat="server">
        <ZoneTemplate>
          <asp:PageCatalogPart ID="PageCatalogPart1" runat="server" 
            Title="My Page Catalog" 
            ChromeType="TitleOnly" />
          <asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1"  
            runat="server" 
            Description="Contains a user control with Web Parts and 
              an ASP.NET Calendar control.">
            <WebPartsTemplate>
              <asp:Calendar ID="Calendar1" runat="server" 
                Title="My Calendar" 
                Description="ASP.NET Calendar control used as a personal calendar." />
              <aspSample:UserInfoWebPart 
                runat="server"   
                id="userinfo1" 
                title = "User Information WebPart"
                Description ="Contains custom, editable user information 
                  for display on a page." />
              <aspSample:TextDisplayWebPart 
                runat="server"   
                id="TextDisplayWebPart1" 
                title = "Text Display WebPart" 
                Description="Contains a label that users can dynamically update." />
            </WebPartsTemplate>              
          </asp:DeclarativeCatalogPart>
        </ZoneTemplate>
      </asp:CatalogZone>
    </form>
  </body>
</html>

La tercera parte del ejemplo de código es el código fuente de los dos WebPart controles. Para que se ejecute el ejemplo de código, debe compilar este código fuente. Puede compilarlo explícitamente y colocar el ensamblado resultante en la carpeta Bin del sitio web o en la caché global de ensamblados. Como alternativa, puede colocar el código fuente en la carpeta App_Code del sitio, donde se compilará dinámicamente en tiempo de ejecución. Para ver un tutorial que muestra ambos métodos de compilación, vea Walkthrough: Developing and Using a Custom Web Server Control.

using System;
using System.Collections;
using System.ComponentModel;
using System.Drawing;
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 UserInfoWebPart : WebPart
  {
    HttpServerUtility server = HttpContext.Current.Server;
    private String _userNickName = "Add a nickname.";
    private String _userPetName = "Add a pet's name.";
    private DateTime _userSpecialDate = DateTime.Now;
    private Boolean _userIsCurrent = true;
    private JobTypeName _userJobType = JobTypeName.Unselected;
    public enum JobTypeName
    {
      Unselected = 0,
      Support = 1,
      Service = 2,
      Professional = 3, 
      Technical = 4,
      Manager = 5,
      Executive = 6
    }
    Label NickNameLabel;
    Label PetNameLabel;
    Label SpecialDateLabel;
    CheckBox IsCurrentCheckBox;
    Label JobTypeLabel;

    // Add the Personalizable and WebBrowsable attributes to the  
    // public properties, so that users can save property values  
    // and edit them with a PropertyGridEditorPart control.
    [Personalizable(), WebBrowsable, WebDisplayName("Nickname")]
    public String NickName
    {
      get 
      { 
        object o = ViewState["NickName"];
        if (o != null)
          return (string)o;
        else
          return _userNickName;        
      } 

      set { _userNickName = server.HtmlEncode(value); }
    }

    [Personalizable(), WebBrowsable, WebDisplayName("Pet Name")]
    public String PetName
    {
      get 
      { 
        object o = ViewState["PetName"];
        if (o != null)
          return (string)o;
        else
          return _userPetName;        
      }

      set { _userPetName = server.HtmlEncode(value); }
    }

    [Personalizable(), WebBrowsable(), WebDisplayName("Special Day")]
    public DateTime SpecialDay
    {
      get
      {
        object o = ViewState["SpecialDay"];
        if (o != null)
          return (DateTime)o;
        else
          return _userSpecialDate;
      }

      set { _userSpecialDate = value; }
    }

    [Personalizable(), WebBrowsable(), WebDisplayName("Job Type")]
    public JobTypeName UserJobType
    {
      get
      {
        object o = ViewState["UserJobType"];
        if (o != null)
          return (JobTypeName)o;
        else
          return _userJobType;
      }

      set { _userJobType = (JobTypeName)value; }
    }

    [Personalizable(), WebBrowsable(), WebDisplayName("Is Current")]
    public Boolean IsCurrent
    {
      get
      {
        object o = ViewState["IsCurrent"];
        if (o != null)
          return (Boolean)o;
        else
          return _userIsCurrent;
      }

      set { _userIsCurrent = value; }
    }

    protected override void CreateChildControls()
    {
      Controls.Clear();

      NickNameLabel = new Label();
      NickNameLabel.Text = this.NickName;
      SetControlAttributes(NickNameLabel);

      PetNameLabel = new Label();
      PetNameLabel.Text = this.PetName;
      SetControlAttributes(PetNameLabel);

      SpecialDateLabel = new Label();
      SpecialDateLabel.Text = this.SpecialDay.ToShortDateString();
      SetControlAttributes(SpecialDateLabel);

      IsCurrentCheckBox = new CheckBox();
      IsCurrentCheckBox.Checked = this.IsCurrent;
      SetControlAttributes(IsCurrentCheckBox);

      JobTypeLabel = new Label();
      JobTypeLabel.Text = this.UserJobType.ToString();
      SetControlAttributes(JobTypeLabel);

      ChildControlsCreated = true;
    }

    private void SetControlAttributes(WebControl ctl)
    {
      ctl.BackColor = Color.White;
      ctl.BorderWidth = 1;
      ctl.Width = 200;
      this.Controls.Add(ctl);
    }

    protected override void RenderContents(HtmlTextWriter writer)
    {
      writer.Write("Nickname:");
      writer.WriteBreak();
      NickNameLabel.RenderControl(writer);
      writer.WriteBreak();
      writer.Write("Pet Name:");
      writer.WriteBreak();
      PetNameLabel.RenderControl(writer);
      writer.WriteBreak();
      writer.Write("Special Date:");
      writer.WriteBreak();
      SpecialDateLabel.RenderControl(writer);
      writer.WriteBreak();
      writer.Write("Job Type:");
      writer.WriteBreak();
      JobTypeLabel.RenderControl(writer);
      writer.WriteBreak();
      writer.Write("Current:");
      writer.WriteBreak();
      IsCurrentCheckBox.RenderControl(writer);
    }
  }

  [AspNetHostingPermission(SecurityAction.Demand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  [AspNetHostingPermission(SecurityAction.InheritanceDemand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  public class TextDisplayWebPart : WebPart
  {
    private String _contentText = null;
    TextBox input;
    Label DisplayContent;
    Literal lineBreak;

    [Personalizable(), WebBrowsable]
    public String ContentText
    {
      get { return _contentText; }
      set { _contentText = value; }
    }

    protected override void CreateChildControls()
    {
      Controls.Clear();
      DisplayContent = new Label();
      DisplayContent.BackColor = Color.LightBlue;
      DisplayContent.Text = this.ContentText;
      this.Controls.Add(DisplayContent);

      lineBreak = new Literal();
      lineBreak.Text = @"<br />";
      Controls.Add(lineBreak);

      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);
    }

    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.Collections
Imports System.ComponentModel
Imports System.Drawing
Imports System.Security.Permissions
Imports System.Web
Imports System.Web.UI
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 UserInfoWebPart
    Inherits WebPart
    Private server As HttpServerUtility = HttpContext.Current.Server
    Private _userNickName As String = "Add a nickname."
    Private _userPetName As String = "Add a pet's name."
    Private _userSpecialDate As DateTime = DateTime.Now
    Private _userIsCurrent As [Boolean] = True
    Private _userJobType As JobTypeName = JobTypeName.Unselected

    Public Enum JobTypeName
      Unselected = 0
      Support = 1
      Service = 2
      Professional = 3
      Technical = 4
      Manager = 5
      Executive = 6
    End Enum

    Private NickNameLabel As Label
    Private PetNameLabel As Label
    Private SpecialDateLabel As Label
    Private IsCurrentCheckBox As CheckBox
    Private JobTypeLabel As Label

    ' Add the Personalizable and WebBrowsable attributes to the  
    ' public properties, so that users can save property values  
    ' and edit them with a PropertyGridEditorPart control.

    <Personalizable(), WebBrowsable(), WebDisplayName("Nickname")> _
    Public Property NickName() As String
      Get
        Dim o As Object = ViewState("NickName")
        If Not (o Is Nothing) Then
          Return CStr(o)
        Else
          Return _userNickName
        End If
      End Get
      Set(ByVal value As String)
        _userNickName = server.HtmlEncode(value)
      End Set
    End Property

    <Personalizable(), WebBrowsable(), WebDisplayName("Pet Name")> _
    Public Property PetName() As String
      Get
        Dim o As Object = ViewState("PetName")
        If Not (o Is Nothing) Then
          Return CStr(o)
        Else
          Return _userPetName
        End If
      End Get
      Set(ByVal value As String)
        _userPetName = server.HtmlEncode(value)
      End Set
    End Property

    <Personalizable(), WebBrowsable(), WebDisplayName("Special Day")> _
    Public Property SpecialDay() As DateTime
      Get
        Dim o As Object = ViewState("SpecialDay")
        If Not (o Is Nothing) Then
          Return CType(o, DateTime)
        Else
          Return _userSpecialDate
        End If
      End Get

      Set(ByVal value As DateTime)
        _userSpecialDate = value
      End Set
    End Property

    <Personalizable(), WebBrowsable(), WebDisplayName("Job Type")> _
    Public Property UserJobType() As JobTypeName
      Get
        Dim o As Object = ViewState("UserJobType")
        If Not (o Is Nothing) Then
          Return CType(o, JobTypeName)
        Else
          Return _userJobType
        End If
      End Get
      Set(ByVal value As JobTypeName)
        _userJobType = CType(value, JobTypeName)
      End Set
    End Property

    <Personalizable(), WebBrowsable(), WebDisplayName("Is Current")> _
    Public Property IsCurrent() As [Boolean]
      Get
        Dim o As Object = ViewState("IsCurrent")
        If Not (o Is Nothing) Then
          Return CType(o, [Boolean])
        Else
          Return _userIsCurrent
        End If
      End Get
      Set(ByVal value As [Boolean])
        _userIsCurrent = value
      End Set
    End Property

    Protected Overrides Sub CreateChildControls()
      Controls.Clear()

      NickNameLabel = New Label()
      NickNameLabel.Text = Me.NickName
      SetControlAttributes(NickNameLabel)

      PetNameLabel = New Label()
      PetNameLabel.Text = Me.PetName
      SetControlAttributes(PetNameLabel)

      SpecialDateLabel = New Label()
      SpecialDateLabel.Text = Me.SpecialDay.ToShortDateString()
      SetControlAttributes(SpecialDateLabel)

      IsCurrentCheckBox = New CheckBox()
      IsCurrentCheckBox.Checked = Me.IsCurrent
      SetControlAttributes(IsCurrentCheckBox)

      JobTypeLabel = New Label()
      JobTypeLabel.Text = Me.UserJobType.ToString()
      SetControlAttributes(JobTypeLabel)

      ChildControlsCreated = True

    End Sub

    Private Sub SetControlAttributes(ByVal ctl As WebControl)
      ctl.BackColor = Color.White
      ctl.BorderWidth = 1
      ctl.Width = 200
      Me.Controls.Add(ctl)
    End Sub

    Protected Overrides Sub RenderContents(ByVal writer As HtmlTextWriter)
      writer.Write("Nickname:")
      writer.WriteBreak()
      NickNameLabel.RenderControl(writer)
      writer.WriteBreak()
      writer.Write("Pet Name:")
      writer.WriteBreak()
      PetNameLabel.RenderControl(writer)
      writer.WriteBreak()
      writer.Write("Special Date:")
      writer.WriteBreak()
      SpecialDateLabel.RenderControl(writer)
      writer.WriteBreak()
      writer.Write("Job Type:")
      writer.WriteBreak()
      JobTypeLabel.RenderControl(writer)
      writer.WriteBreak()
      writer.Write("Current:")
      writer.WriteBreak()
      IsCurrentCheckBox.RenderControl(writer)

    End Sub

  End Class


  <AspNetHostingPermission(SecurityAction.Demand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  <AspNetHostingPermission(SecurityAction.InheritanceDemand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  Public Class TextDisplayWebPart
    Inherits WebPart
    Private _contentText As String = Nothing
    Private _fontStyle As String = Nothing
    Private input As TextBox
    Private DisplayContent As Label
    Private lineBreak As Literal

    <Personalizable(), WebBrowsable()> _
    Public Property ContentText() As String
      Get
        Return _contentText
      End Get
      Set(ByVal value As String)
        _contentText = value
      End Set
    End Property

    Protected Overrides Sub CreateChildControls()
      Controls.Clear()
      DisplayContent = New Label()
      DisplayContent.BackColor = Color.LightBlue
      DisplayContent.Text = Me.ContentText
      Me.Controls.Add(DisplayContent)

      lineBreak = New Literal()
      lineBreak.Text = "<br />"
      Controls.Add(lineBreak)

      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)

    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

Al cargar la página en un explorador, seleccione Modo de catálogo en el control de lista desplegable Modo de presentación para cambiar al modo de catálogo. En el modo de catálogo, puede ver los controles que están disponibles para agregarse a la página. Agregue uno de los controles y, a continuación, use el control de lista desplegable Modo de presentación para devolver la página al modo de exploración. Haga clic en el menú verbos (la flecha hacia abajo) en la barra de título de uno de los controles y haga clic en Cerrar para cerrar el control. Devuelva la página al modo de catálogo y observe que el control que ha cerrado aparece ahora en el catálogo de páginas y está disponible para volver a agregarse a la página.

Comentarios

La PageCatalogPart clase sirve para un propósito muy específico en una página de elementos web: actúa como un catálogo de páginas para mantener los controles agregados previamente a la página que un usuario ha cerrado, de modo que el usuario pueda volver a agregarlos a la página. Este control solo es visible cuando una página web está en modo de presentación de catálogo, una vista especial que permite a los usuarios agregar y quitar controles en la página. Agregue un PageCatalogPart control a la página si desea proporcionar a los usuarios la flexibilidad de cerrar y volver a abrir controles. Si la página no permite a los usuarios cerrar los controles en absoluto, no es necesario agregar un PageCatalogPart control a la página.

Solo se agregan controles cerrados al catálogo de páginas. Un control cerrado tiene varios atributos:

  • No está visible en la página.

  • No se representa en la página.

  • No participa en las fases del ciclo de vida de la página.

Cerrar un control es diferente de eliminarlo, que lo quita permanentemente de la página. Un usuario puede volver a abrir una instancia de control cerrada desde un catálogo de páginas, pero después de que un usuario elimine un control, nunca podrá recuperar esa instancia específica.

La forma más común y cómoda de agregar un PageCatalogPart control a una página es declararlo en formato de persistencia de página. Al igual que con cualquier control declarativo CatalogPart , se debe declarar un PageCatalogPart control dentro del contexto adecuado de ASP.NET elementos de marcado en una página web. Para obtener un ejemplo de código funcional sobre cómo declarar un PageCatalogPart control en una página web, vea la sección Ejemplo de este tema. Debe agregar la siguiente secuencia de elementos declarativos a la página:

  1. Se debe declarar un <asp:catalogzone> elemento y se debe agregar un elemento secundario <zonetemplate> para que contenga los CatalogPart controles declarados en la zona.

  2. Se <asp:pagecatalogpart> debe agregar un elemento como elemento secundario del <zonetemplate> elemento . También puede haber otros CatalogPart controles declarados como elementos secundarios del <zonetemplate> elemento, incluidos DeclarativeCatalogPart o ImportCatalogPart controles.

La PageCatalogPart clase tiene solo una propiedad utilizable, la Title propiedad , que invalida la propiedad base para que se pueda proporcionar un título predeterminado para el catálogo de páginas si no se proporciona ningún valor.

Las propiedades restantes de la PageCatalogPart clase invalidan las propiedades heredadas, pero no se usan realmente para representar el control. Solo se invalidan para que se puedan establecer atributos de código especiales en ellos para ocultarlos de herramientas de diseño como Microsoft Visual Studio 2005. No debe usar estas propiedades ocultas, ya que no tienen ningún efecto en la representación. El hecho de que están ocultos de IntelliSense y el panel Propiedades de Visual Studio ayuda a los desarrolladores a evitar su uso por error. Todas estas propiedades ocultas se indican como tal en sus respectivos temas de Ayuda.

La PageCatalogPart clase también tiene varios métodos importantes. El GetAvailableWebPartDescriptions método recupera un WebPartDescription objeto para cada WebPart control del catálogo de páginas, lo que permite a un PageCatalogPart control mostrar información sobre cada control de servidor sin tener que crear una instancia de ese control. Otro método es el GetWebPart método . Este método obtiene una instancia de un control determinado WebPart , en función de la descripción que se pasa al método .

Accesibilidad

Es posible que el marcado representado de forma predeterminada para este control no se ajuste a los estándares de accesibilidad, como las directrices de accesibilidad de contenido web 1.0 (WCAG) de prioridad 1. Para obtener más información sobre la compatibilidad de accesibilidad con este control, consulte ASP.NET Controles y accesibilidad.

Constructores

PageCatalogPart()

Inicializa una nueva instancia de la clase.

Propiedades

AccessKey

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

Adapter

Obtiene el adaptador específico del explorador para el control.

(Heredado de Control)
AppRelativeTemplateSourceDirectory

Obtiene o establece el directorio virtual relativo a la aplicación del objeto Page o el objeto UserControl que contiene este control.

(Heredado de Control)
Attributes

Obtiene la colección de atributos arbitrarios (sólo para su representación) que no corresponden a propiedades del control.

(Heredado de WebControl)
BackColor

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

BackImageUrl

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

BindingContainer

Obtiene el control que contiene el enlace de datos de este control.

(Heredado de Control)
BorderColor

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

BorderStyle

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

BorderWidth

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

ChildControlsCreated

Obtiene un valor que indica si se han creado controles secundarios del control de servidor.

(Heredado de Control)
ChromeState

Obtiene o establece si un control de elementos está en un estado minimizado o normal.

(Heredado de Part)
ChromeType

Obtiene o establece el tipo de borde que encuadra un control de elementos Web.

(Heredado de Part)
ClientID

Obtiene el id. de control para marcado HTML que se genera por ASP.NET.

(Heredado de Control)
ClientIDMode

Obtiene o establece el algoritmo que se utiliza para generar el valor de la propiedad ClientID.

(Heredado de Control)
ClientIDSeparator

Obtiene un valor de carácter que representa el carácter separado utilizado en la propiedad ClientID.

(Heredado de Control)
Context

Obtiene el objeto HttpContext asociado al control de servidor para la solicitud Web actual.

(Heredado de Control)
Controls

Obtiene un objeto ControlCollection que contiene los controles secundarios para un control de servidor especificado en la jerarquía de la interfaz de usuario.

(Heredado de Part)
ControlStyle

Obtiene el estilo del control de servidor web. Esta propiedad la usan principalmente los programadores de controles.

(Heredado de WebControl)
ControlStyleCreated

Obtiene un valor que indica si se ha creado un objeto Style para la propiedad ControlStyle. Esta propiedad la usan principalmente los programadores de controles.

(Heredado de WebControl)
CssClass

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

DataItemContainer

Obtiene una referencia al contenedor de nomenclatura si este implementa IDataItemContainer.

(Heredado de Control)
DataKeysContainer

Obtiene una referencia al contenedor de nomenclatura si este implementa IDataKeysControl.

(Heredado de Control)
DefaultButton

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

Description

Obtiene o establece una frase breve que resume lo que hace el control de elementos, para su uso en información sobre herramientas y en catálogos de controles de elementos.

(Heredado de Part)
DesignMode

Obtiene un valor que indica si se está utilizando un control en una superficie de diseño.

(Heredado de Control)
Direction

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

DisplayTitle

Obtiene una cadena que contiene el título real actual de un control CatalogPart.

(Heredado de CatalogPart)
Enabled

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

EnableTheming

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

EnableViewState

Obtiene o establece un valor que indica si el control de servidor conserva su estado de vista, así como el estado de vista de los controles secundarios que contiene, al cliente solicitante.

(Heredado de Control)
Events

Obtiene una lista de delegados de controladores de eventos del control. Esta propiedad es de sólo lectura.

(Heredado de Control)
Font

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

ForeColor

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

GroupingText

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

HasAttributes

Obtiene un valor que indica si el control tiene establecido algún atributo.

(Heredado de WebControl)
HasChildViewState

Obtiene un valor que indica si los controles secundarios del control de servidor actual tienen guardada alguna configuración del estado de vista.

(Heredado de Control)
Height

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

HorizontalAlign

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

ID

Obtiene o establece el identificador de programación asignado al control de servidor.

(Heredado de Control)
IdSeparator

Obtiene el carácter utilizado para separar los identificadores de control.

(Heredado de Control)
IsChildControlStateCleared

Obtiene un valor que indica si los controles que se encuentran en este control tienen estado de control.

(Heredado de Control)
IsEnabled

Obtiene un valor que indica si está habilitado el control.

(Heredado de WebControl)
IsTrackingViewState

Obtiene un valor que indica si el control de servidor está guardando los cambios realizados en su estado de vista.

(Heredado de Control)
IsViewStateEnabled

Obtiene un valor que indica si el estado de vista está habilitado para este control.

(Heredado de Control)
LoadViewStateByID

Obtiene un valor que indica si el control participa en la carga de su estado de vista mediante ID en lugar de índice.

(Heredado de Control)
NamingContainer

Obtiene una referencia al contenedor de nomenclatura del control de servidor, que crea un espacio de nombres único para diferenciar los distintos controles de servidor que tienen el mismo valor para la propiedad ID.

(Heredado de Control)
Page

Obtiene una referencia a la instancia Page que contiene el control de servidor.

(Heredado de Control)
Parent

Obtiene una referencia al control principal del control de servidor en la jerarquía de controles de página.

(Heredado de Control)
RenderingCompatibility

Obtiene o establece un valor que especifica la versión de ASP.NET compatible con los elementos HTML representados.

(Heredado de Control)
ScrollBars

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

Site

Obtiene información sobre el contenedor en que se encuentra el control actual cuando se representa en una superficie de diseño.

(Heredado de Control)
SkinID

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

Style

Obtiene una colección de atributos de texto que se representan como atributo de estilo en la etiqueta externa del control de servidor web.

(Heredado de WebControl)
SupportsDisabledAttribute

Obtiene un valor que indica si el control debe establecer en "disabled" el atributo disabled del elemento HTML representado cuando el valor de la propiedad IsEnabled del control es false.

(Heredado de Panel)
TabIndex

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

TagKey

Obtiene el valor HtmlTextWriterTag correspondiente al control de servidor web. Esta propiedad la usan principalmente los programadores de controles.

(Heredado de WebControl)
TagName

Obtiene el nombre de la etiqueta del control. Esta propiedad la usan principalmente los programadores de controles.

(Heredado de WebControl)
TemplateControl

Obtiene o establece una referencia a la plantilla que contiene este control.

(Heredado de Control)
TemplateSourceDirectory

Obtiene el directorio virtual de Page o UserControl que contiene el control de servidor actual.

(Heredado de Control)
Title

Obtiene o establece el título que aparece en la barra de título del control.

ToolTip

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

UniqueID

Obtiene el identificador único calificado jerárquicamente para el control de servidor.

(Heredado de Control)
ValidateRequestMode

Obtiene o establece un valor que indica si el control comprueba la entrada del cliente desde el explorador para valores potencialmente peligrosos.

(Heredado de Control)
ViewState

Obtiene un diccionario con información de estado que le permite guardar y restaurar el estado de vista de un control de servidor en las distintas solicitudes de la misma página.

(Heredado de Control)
ViewStateIgnoresCase

Obtiene un valor que indica si el objeto StateBag no distingue mayúsculas de minúsculas.

(Heredado de Control)
ViewStateMode

Obtiene o establece el modo del estado de vista de este control.

(Heredado de Control)
Visible

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

WebPartManager

Obtiene una referencia a la instancia actual de la clase WebPartManager.

(Heredado de CatalogPart)
Width

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

Wrap

El conjunto de controles de elementos Web no utiliza esta propiedad heredada cuando representa un control PageCatalogPart. La propiedad solo se invalida para evitar que aparezca en las herramientas de diseñador de Microsoft Visual Studio 2005.

Zone

Obtiene una referencia a la zona CatalogZoneBase que contiene un control CatalogPart.

(Heredado de CatalogPart)

Métodos

AddAttributesToRender(HtmlTextWriter)

Agrega información sobre la imagen de fondo, alineación, ajuste y dirección a la lista de atributos que se van a presentar.

(Heredado de Panel)
AddedControl(Control, Int32)

Se llama después de agregar un control secundario a la colección Controls del objeto Control.

(Heredado de Control)
AddParsedSubObject(Object)

Notifica al control de servidor que se analizó un elemento, ya sea XML o HTML, y agrega el elemento al objeto ControlCollection del control del servidor.

(Heredado de Control)
ApplyStyle(Style)

Copia en el control Web todos los elementos no vacíos del estilo especificado, sobrescribiendo los elementos de estilo existentes del mismo. Este método lo usan principalmente los programadores de controles.

(Heredado de WebControl)
ApplyStyleSheetSkin(Page)

Aplica al control las propiedades de estilo definidas en la hoja de estilos de la página.

(Heredado de Control)
BeginRenderTracing(TextWriter, Object)

Comienza el seguimiento en tiempo de diseño de los datos de representación.

(Heredado de Control)
BuildProfileTree(String, Boolean)

Recopila información sobre el control de servidor y la pasa a la propiedad Trace para que se muestre cuando está habilitada la traza de la página.

(Heredado de Control)
ClearCachedClientID()

Establece en null el valor de ClientID almacenado en caché.

(Heredado de Control)
ClearChildControlState()

Elimina la información sobre el estado de control de los controles secundarios del control de servidor.

(Heredado de Control)
ClearChildState()

Elimina la información sobre el estado de vista y el estado de control de los controles secundarios del control de servidor.

(Heredado de Control)
ClearChildViewState()

Elimina la información sobre el estado de vista de todos los controles secundarios del control de servidor.

(Heredado de Control)
ClearEffectiveClientIDMode()

Establece la propiedad ClientIDMode de la instancia del control actual y de cualquier control secundario en Inherit.

(Heredado de Control)
CopyBaseAttributes(WebControl)

Copia las propiedades no encapsuladas por el objeto Style del control de servidor web especificado al control de servidor web desde el que se efectúa la llamada al método. Este método lo usan principalmente los desarrolladores de controles.

(Heredado de WebControl)
CreateChildControls()

Lo llama el marco de páginas ASP.NET para indicar a los controles de servidor que usan la implementación basada en composición que creen los controles secundarios que contengan como forma de preparar la devolución o representación de los datos.

(Heredado de Control)
CreateControlCollection()

Crea un nuevo objeto ControlCollection que contendrá los controles secundarios (de literal y servidor) del control de servidor.

(Heredado de Control)
CreateControlStyle()

Crea un objeto de estilo que usa el control Panel de forma interna para implementar todas las propiedades relacionadas con el estilo.

(Heredado de Panel)
DataBind()

Enlaza un origen de datos al control de servidor invocado y a todos sus controles secundarios.

(Heredado de Part)
DataBind(Boolean)

Enlaza un origen de datos al control de servidor que se ha invocado y a todos sus controles secundarios con una opción para generar el evento DataBinding.

(Heredado de Control)
DataBindChildren()

Enlaza un origen de datos a los controles secundarios del control de servidor.

(Heredado de Control)
Dispose()

Habilita un control de servidor para que realice la limpieza final antes de que se libere de la memoria.

(Heredado de Control)
EndRenderTracing(TextWriter, Object)

Finaliza el seguimiento en tiempo de diseño de los datos de representación.

(Heredado de Control)
EnsureChildControls()

Determina si el control de servidor contiene controles secundarios. Si no tiene controles secundarios, los crea.

(Heredado de Control)
EnsureID()

Crea un identificador para controles que no tiene un identificador asignado.

(Heredado de Control)
Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
FindControl(String)

Busca un control de servidor con el parámetro id especificado en el contenedor de nomenclatura actual.

(Heredado de Control)
FindControl(String, Int32)

Busca el contenedor de nomenclatura actual para un control de servidor con el id especificado y un entero, que se especifica en el parámetro pathOffset, que ayuda a realizar la búsqueda. Esta versión del método FindControl no se debe reemplazar.

(Heredado de Control)
Focus()

Establece el foco de entrada en un control.

(Heredado de Control)
GetAvailableWebPartDescriptions()

Devuelve una colección de descripciones de los controles WebPart disponibles en un catálogo.

GetDesignModeState()

Recupera el estado actual de una zona primaria de un control CatalogPart.

(Heredado de CatalogPart)
GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetRouteUrl(Object)

Obtiene la dirección URL que corresponde a un conjunto de parámetros de ruta.

(Heredado de Control)
GetRouteUrl(RouteValueDictionary)

Obtiene la dirección URL que corresponde a un conjunto de parámetros de ruta.

(Heredado de Control)
GetRouteUrl(String, Object)

Obtiene la dirección URL que corresponde a un conjunto de parámetros de ruta y un nombre de ruta.

(Heredado de Control)
GetRouteUrl(String, RouteValueDictionary)

Obtiene la dirección URL que corresponde a un conjunto de parámetros de ruta y un nombre de ruta.

(Heredado de Control)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
GetUniqueIDRelativeTo(Control)

Devuelve la parte correspondiente al prefijo de la propiedad UniqueID del control especificado.

(Heredado de Control)
GetWebPart(WebPartDescription)

Devuelve una referencia a un control WebPart basado en el valor de la descripción pasado al método.

HasControls()

Determina si el control de servidor contiene controles secundarios.

(Heredado de Control)
HasEvents()

Devuelve un valor que indica si se registran eventos para el control o los controles secundarios.

(Heredado de Control)
IsLiteralContent()

Determina si el control de servidor alberga únicamente contenido literal.

(Heredado de Control)
LoadControlState(Object)

Restaura información de estado de control de una solicitud de página anterior guardada por el método SaveControlState().

(Heredado de Control)
LoadViewState(Object)

Restaura la información del estado de la vista a partir de una solicitud anterior que se guardó con el método SaveViewState().

(Heredado de WebControl)
MapPathSecure(String)

Recupera la ruta de acceso física a la que se asigna una ruta de acceso virtual, absoluta o relativa.

(Heredado de Control)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
MergeStyle(Style)

Copia en el control Web todos los elementos no vacíos del estilo especificado, pero no sobrescribe los elementos de estilo existentes en el mismo. Este método lo usan principalmente los desarrolladores de controles.

(Heredado de WebControl)
OnBubbleEvent(Object, EventArgs)

Determina si el evento del control de servidor se pasa a la jerarquía de control de servidor de la interfaz de usuario (UI) de la página.

(Heredado de Control)
OnDataBinding(EventArgs)

Genera el evento DataBinding.

(Heredado de Control)
OnInit(EventArgs)

Genera el evento Init.

(Heredado de Control)
OnLoad(EventArgs)

Genera el evento Load.

(Heredado de Control)
OnPreRender(EventArgs)

Genera el evento PreRender.

(Heredado de CatalogPart)
OnUnload(EventArgs)

Genera el evento Unload.

(Heredado de Control)
OpenFile(String)

Obtiene un objeto Stream utilizado para leer un archivo.

(Heredado de Control)
RaiseBubbleEvent(Object, EventArgs)

Asigna los orígenes del evento y su información al control principal del control.

(Heredado de Control)
RemovedControl(Control)

Se llama después de quitar un control secundario de la colección Controls del objeto Control.

(Heredado de Control)
Render(HtmlTextWriter)

Representa el control en el sistema de escritura HTML especificado.

(Heredado de WebControl)
RenderBeginTag(HtmlTextWriter)

Presenta la etiqueta HTML de apertura del control Panel en el sistema de escritura especificado.

(Heredado de Panel)
RenderChildren(HtmlTextWriter)

Envía el contenido de los elementos secundarios de un control de servidor a un objeto HtmlTextWriter especificado, que escribe el contenido que se va a representar en el cliente.

(Heredado de Control)
RenderContents(HtmlTextWriter)

Representa el contenido del control en el sistema de escritura especificado. Este método lo usan principalmente los desarrolladores de controles.

(Heredado de WebControl)
RenderControl(HtmlTextWriter)

Envía el contenido de control del servidor a un objeto HtmlTextWriter proporcionado y almacena información de seguimiento sobre el control si está habilitado el seguimiento.

(Heredado de Control)
RenderControl(HtmlTextWriter, ControlAdapter)

Coloca el contenido de un control de servidor en un objeto HtmlTextWriter proporcionado, utilizando un objeto ControlAdapter proporcionado.

(Heredado de Control)
RenderEndTag(HtmlTextWriter)

Presenta la etiqueta HTML de cierre del control Panel en el escritor especificado.

(Heredado de Panel)
ResolveAdapter()

Obtiene el adaptador de controles que se encarga de representar el control especificado.

(Heredado de Control)
ResolveClientUrl(String)

Obtiene una dirección URL que el explorador puede utilizar.

(Heredado de Control)
ResolveUrl(String)

Convierte una dirección URL en una que el cliente solicitante pueda utilizar.

(Heredado de Control)
SaveControlState()

Guarda los cambios de estado del control de servidor que se produjeron desde la hora en que la página volvió a publicarse en el servidor.

(Heredado de Control)
SaveViewState()

Guarda cualquier estado modificado después de invocar el método TrackViewState().

(Heredado de WebControl)
SetDesignModeState(IDictionary)

Establece los datos en tiempo de diseño para un control.

(Heredado de CatalogPart)
SetRenderMethodDelegate(RenderMethod)

Asigna un delegado de controlador de eventos para representar el control de servidor y su contenido en el control principal.

(Heredado de Control)
SetTraceData(Object, Object)

Establece datos de seguimiento para el seguimiento en tiempo de diseño de los datos de representación, para lo que usa la clave y el valor de los datos de seguimiento.

(Heredado de Control)
SetTraceData(Object, Object, Object)

Establece datos de seguimiento para el seguimiento en tiempo de diseño de los datos de representación, para lo que usa el objeto del que se ha realizado seguimiento, así como la clave y el valor de los datos de seguimiento.

(Heredado de Control)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)
TrackViewState()

Hace que el control realice un seguimiento de los cambios en su estado de vista para que puedan almacenarse en la propiedad ViewState del objeto.

(Heredado de WebControl)

Eventos

DataBinding

Se produce cuando el control de servidor se enlaza a un origen de datos.

(Heredado de Control)
Disposed

Se produce cuando un control de servidor se libera de la memoria, lo que constituye la última fase del período de duración de un control de servidor cuando se solicita una página ASP.NET.

(Heredado de Control)
Init

Tiene lugar al inicializar el control de servidor, que es el primer paso en su ciclo de vida.

(Heredado de Control)
Load

Se produce cuando el control de servidor se carga en el objeto Page.

(Heredado de Control)
PreRender

Se produce una vez que se carga el objeto Control, pero antes de su representación.

(Heredado de Control)
Unload

Se produce cuando el control de servidor se descarga de la memoria.

(Heredado de Control)

Implementaciones de interfaz explícitas

IAttributeAccessor.GetAttribute(String)

Obtiene un atributo del control Web con el nombre especificado.

(Heredado de WebControl)
IAttributeAccessor.SetAttribute(String, String)

Establece un atributo del control Web con el nombre y el valor especificados.

(Heredado de WebControl)
ICompositeControlDesignerAccessor.RecreateChildControls()

Le permite al programador de un diseñador para un control de elementos compuesto volver a crear los controles secundarios del control en la superficie de diseño.

(Heredado de Part)
IControlBuilderAccessor.ControlBuilder

Para obtener una descripción de este miembro, vea ControlBuilder.

(Heredado de Control)
IControlDesignerAccessor.GetDesignModeState()

Para obtener una descripción de este miembro, vea GetDesignModeState().

(Heredado de Control)
IControlDesignerAccessor.SetDesignModeState(IDictionary)

Para obtener una descripción de este miembro, vea SetDesignModeState(IDictionary).

(Heredado de Control)
IControlDesignerAccessor.SetOwnerControl(Control)

Para obtener una descripción de este miembro, vea SetOwnerControl(Control).

(Heredado de Control)
IControlDesignerAccessor.UserData

Para obtener una descripción de este miembro, vea UserData.

(Heredado de Control)
IDataBindingsAccessor.DataBindings

Para obtener una descripción de este miembro, vea DataBindings.

(Heredado de Control)
IDataBindingsAccessor.HasDataBindings

Para obtener una descripción de este miembro, vea HasDataBindings.

(Heredado de Control)
IExpressionsAccessor.Expressions

Para obtener una descripción de este miembro, vea Expressions.

(Heredado de Control)
IExpressionsAccessor.HasExpressions

Para obtener una descripción de este miembro, vea HasExpressions.

(Heredado de Control)
IParserAccessor.AddParsedSubObject(Object)

Para obtener una descripción de este miembro, vea AddParsedSubObject(Object).

(Heredado de Control)

Métodos de extensión

FindDataSourceControl(Control)

Devuelve el origen de datos que está asociado al control de datos del control especificado.

FindFieldTemplate(Control, String)

Devuelve la plantilla de campo para la columna especificada en el contenedor de nomenclatura del control especificado.

FindMetaTable(Control)

Devuelve el objeto de metatabla para el control de datos contenedor.

GetDefaultValues(INamingContainer)

Obtiene la colección de los valores predeterminados para el control de datos especificado.

GetMetaTable(INamingContainer)

Obtiene los metadatos de la tabla para el control de datos especificado.

SetMetaTable(INamingContainer, MetaTable)

Establece los metadatos de la tabla para el control de datos especificado.

SetMetaTable(INamingContainer, MetaTable, IDictionary<String,Object>)

Establece los metadatos de tabla y la asignación de valores predeterminados para el control de datos especificado.

SetMetaTable(INamingContainer, MetaTable, Object)

Establece los metadatos de tabla y la asignación de valores predeterminados para el control de datos especificado.

TryGetMetaTable(INamingContainer, MetaTable)

Determina si están disponibles los metadatos de la tabla.

EnableDynamicData(INamingContainer, Type)

Habilita el comportamiento de datos dinámicos para el control de datos especificado.

EnableDynamicData(INamingContainer, Type, IDictionary<String,Object>)

Habilita el comportamiento de datos dinámicos para el control de datos especificado.

EnableDynamicData(INamingContainer, Type, Object)

Habilita el comportamiento de datos dinámicos para el control de datos especificado.

Se aplica a

Consulte también