WebPartManager Clase

Definición

Actúa como clase central del conjunto de controles de elementos web, ya que administra todos los controles de elementos web, la funcionalidad y los eventos que se producen en una página web.

public ref class WebPartManager : System::Web::UI::Control, System::Web::UI::INamingContainer, System::Web::UI::WebControls::WebParts::IPersonalizable
[System.ComponentModel.Bindable(false)]
public class WebPartManager : System.Web.UI.Control, System.Web.UI.INamingContainer, System.Web.UI.WebControls.WebParts.IPersonalizable
[<System.ComponentModel.Bindable(false)>]
type WebPartManager = class
    inherit Control
    interface INamingContainer
    interface IPersonalizable
Public Class WebPartManager
Inherits Control
Implements INamingContainer, IPersonalizable
Herencia
WebPartManager
Atributos
Implementaciones

Ejemplos

En el ejemplo de código siguiente se muestra el uso declarativo y mediante programación del WebPartManager control .

El ejemplo de código tiene cuatro partes:

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

  • Una página web que contiene dos controles personalizados WebPart que se pueden conectar y un <asp:webpartmanager> elemento .

  • Un archivo de código fuente que contiene dos controles personalizados WebPart y una interfaz personalizada.

  • Explicación de cómo funciona el ejemplo en un explorador.

El control de usuario tiene un control de lista desplegable que muestra los posibles modos de visualización en una página, dados los controles de elementos web que están presentes en la página. En la página web de este ejemplo de código, este control de usuario se declara justo debajo del elemento en el WebPartManager marcado de la página y hay una Register directiva cerca de la parte superior de la página web para registrar el control. Para obtener más información sobre los modos de visualización y una descripción del código fuente de este control, vea Tutorial: Cambiar modos de presentación en una página de elementos web.

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

El marcado declarativo de la página web contiene Register directivas para el control de usuario y los controles personalizados. Hay un <asp:webpartmanager> elemento , un <asp:webpartzone> elemento que contiene los controles personalizados y un <asp:connectionszone> elemento . La página también contiene código insertado que controla los eventos relacionados con la conexión para el WebPartManager control; puede ver el efecto de este código a medida que se conectan y desconectan los controles.

<%@ Page Language="C#" %>
<%@ register TagPrefix="uc1" 
  TagName="DisplayModeMenuCS" 
  Src="DisplayModeMenuCS.ascx" %>
<%@ register tagprefix="aspSample" 
  Namespace="Samples.AspNet.CS.Controls" 
  Assembly="ConnectionSampleCS" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
 
  private void UpdateLabelData(int wpCount, int connCount)
  {
    Label1.Text = "WebPart Control Count:  " + wpCount.ToString();
    Label2.Text = "Connections Count: " + connCount.ToString();
  }

  protected void WebPartManager1_WebPartsConnected(object sender, WebPartConnectionsEventArgs e)
  {
    UpdateLabelData(WebPartManager1.WebParts.Count,
      WebPartManager1.Connections.Count);
  }

  protected void WebPartManager1_WebPartsDisconnected(object sender, WebPartConnectionsEventArgs e)
  {
    UpdateLabelData(WebPartManager1.WebParts.Count,
      WebPartManager1.Connections.Count);
  }
  
</script>

<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">
      <!-- Reference the WebPartManager control. -->
      <asp:WebPartManager ID="WebPartManager1" runat="server"  
        OnWebPartsConnected="WebPartManager1_WebPartsConnected" 
        OnWebPartsDisconnected="WebPartManager1_WebPartsDisconnected" />
    <div>
      <uc1:DisplayModeMenuCS ID="displaymode1" runat="server" />
      <!-- Reference consumer and provider controls in a zone. -->
      <asp:WebPartZone ID="WebPartZone1" runat="server">
        <ZoneTemplate>
          <aspSample:ZipCodeWebPart ID="zip1" 
            runat="server" 
            Title="Zip Code Control"/>
          <aspSample:WeatherWebPart ID="weather1" 
            runat="server" 
            Title="Weather Control" />
        </ZoneTemplate>
      </asp:WebPartZone>
      <hr />
      <asp:Label ID="Label1" runat="server" Text=""></asp:Label>
      <br />
      <asp:Label ID="Label2" runat="server" Text=""></asp:Label>
      <!-- Add a ConnectionsZone so users can connect controls. -->
      <asp:ConnectionsZone ID="ConnectionsZone1" runat="server" />
    </div>
    </form>
</body>
</html>
<%@ Page Language="vb" %>
<%@ register TagPrefix="uc1" 
  TagName="DisplayModeMenuVB" 
  Src="DisplayModeMenuVB.ascx" %>
<%@ register tagprefix="aspSample" 
  Namespace="Samples.AspNet.VB.Controls" 
  Assembly="ConnectionSampleVB" %>

<!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 WebPartManager1_WebPartsConnected( _
    ByVal sender As Object, _
    ByVal e As System.Web.UI.WebControls.WebParts.WebPartConnectionsEventArgs)
    
    UpdateLabelData(WebPartManager1.WebParts.Count, _
      WebPartManager1.Connections.Count)
    
  End Sub

  Protected Sub WebPartManager1_WebPartsDisconnected( _
    ByVal sender As Object, _
    ByVal e As System.Web.UI.WebControls.WebParts.WebPartConnectionsEventArgs)
    
    UpdateLabelData(WebPartManager1.WebParts.Count, _
      WebPartManager1.Connections.Count)
    
  End Sub
  
  Private Sub UpdateLabelData(ByVal wpCount As Integer, _
    ByVal connCount As Integer)
    
    Label1.Text = "WebPart Control Count:  " & wpCount.ToString()
    Label2.Text = "Connections Count: " & connCount.ToString()
    
  End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
      <!-- Reference the WebPartManager control. -->
      <asp:WebPartManager ID="WebPartManager1" runat="server" OnWebPartsConnected="WebPartManager1_WebPartsConnected" OnWebPartsDisconnected="WebPartManager1_WebPartsDisconnected" />
    <div>
      <uc1:DisplayModeMenuVB ID="displaymode1" runat="server" />
      <!-- Reference consumer and provider controls in a zone. -->
      <asp:WebPartZone ID="WebPartZone1" runat="server">
        <ZoneTemplate>
          <aspSample:ZipCodeWebPart ID="zip1" 
            runat="server" 
            Title="Zip Code Control"/>
          <aspSample:WeatherWebPart ID="weather1" 
            runat="server" 
            Title="Weather Control" />
        </ZoneTemplate>
      </asp:WebPartZone>
      <hr />
      <asp:Label ID="Label1" runat="server" Text=""></asp:Label>
      <br />
      <asp:Label ID="Label2" runat="server" Text=""></asp:Label>
      <!-- Add a ConnectionsZone so users can connect controls. -->
      <asp:ConnectionsZone ID="ConnectionsZone1" runat="server" />
    </div>
    </form>
</body>
</html>

La tercera parte del ejemplo es el código fuente de los controles. Tenga en cuenta que hay una interfaz denominada IZipCodey esta interfaz se implementa en la ZipCodeWebPart clase . Esta clase tiene un método de devolución de llamada especial denominado ProvideIZipCode que actúa como proveedor. El otro tipo, denominado WeatherWebPart, también se implementa con un método especial denominado GetIZipCode, que permite que el control actúe como consumidor del otro control.

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. En este ejemplo de código se supone que ha compilado el origen en un ensamblado y la Register directiva de la página web hace referencia al nombre del ensamblado. Para ver un tutorial que muestra cómo compilar, consulte Tutorial: Desarrollo y uso de un control de servidor web personalizado.

namespace Samples.AspNet.CS.Controls
{
  using System;
  using System.Web;
  using System.Web.Security;
  using System.Security.Permissions;
  using System.Web.UI;
  using System.Web.UI.WebControls;
  using System.Web.UI.WebControls.WebParts;

  [AspNetHostingPermission(SecurityAction.Demand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  [AspNetHostingPermission(SecurityAction.InheritanceDemand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  public interface IZipCode
  {
    string ZipCode { get; set;}
  }

  [AspNetHostingPermission(SecurityAction.Demand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  [AspNetHostingPermission(SecurityAction.InheritanceDemand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  public class ZipCodeWebPart : WebPart, IZipCode
  {
    string zipCodeText = String.Empty;
    TextBox input;
    Button send;

    public ZipCodeWebPart()
    {
    }

    // Make the implemented property personalizable to save 
    // the Zip Code between browser sessions.
    [Personalizable()]
    public virtual string ZipCode
    {
      get { return zipCodeText; }
      set { zipCodeText = value; }
    }

    // This is the callback method that returns the provider.
    [ConnectionProvider("Zip Code")]
    public IZipCode ProvideIZipCode()
    {
      return this;
    }

    protected override void CreateChildControls()
    {
      Controls.Clear();
      input = new TextBox();
      this.Controls.Add(input);
      send = new Button();
      send.Text = "Enter 5-digit Zip Code";
      send.Click += new EventHandler(this.submit_Click);
      this.Controls.Add(send);
    }

    private void submit_Click(object sender, EventArgs e)
    {
      if (!string.IsNullOrEmpty(input.Text))
      {
        zipCodeText = Page.Server.HtmlEncode(input.Text);
        input.Text = String.Empty;
      }
    }
  }

  [AspNetHostingPermission(SecurityAction.Demand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  [AspNetHostingPermission(SecurityAction.InheritanceDemand,
    Level = AspNetHostingPermissionLevel.Minimal)]
  public class WeatherWebPart : WebPart
  {
    private IZipCode _provider;
    string _zipSearch;
    Label DisplayContent;

    // This method is identified by the ConnectionConsumer 
    // attribute, and is the mechanism for connecting with 
    // the provider. 
    [ConnectionConsumer("Zip Code")]
    public void GetIZipCode(IZipCode Provider)
    {
      _provider = Provider;
    }
    
    protected override void OnPreRender(EventArgs e)
    {
      EnsureChildControls();

      if (this._provider != null)
      {
        _zipSearch = _provider.ZipCode.Trim();
        DisplayContent.Text = "My Zip Code is:  " + _zipSearch;
      }
    }

    protected override void CreateChildControls()
    {
      Controls.Clear();
      DisplayContent = new Label();
      this.Controls.Add(DisplayContent);
    }
  }
}
Imports System.Web
Imports System.Web.Security
Imports System.Security.Permissions
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 Interface IZipCode

    Property ZipCode() As String

  End Interface

  <AspNetHostingPermission(SecurityAction.Demand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  <AspNetHostingPermission(SecurityAction.InheritanceDemand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  Public Class ZipCodeWebPart
    Inherits WebPart
    Implements IZipCode
    Private zipCodeText As String = String.Empty
    Private input As TextBox
    Private send As Button

    Public Sub New()
    End Sub

    ' Make the implemented property personalizable to save 
    ' the Zip Code between browser sessions.
    <Personalizable()> _
    Public Property ZipCode() As String _
      Implements IZipCode.ZipCode

      Get
        Return zipCodeText
      End Get
      Set(ByVal value As String)
        zipCodeText = value
      End Set
    End Property

    ' This is the callback method that returns the provider.
    <ConnectionProvider("Zip Code")> _
    Public Function ProvideIZipCode() As IZipCode
      Return Me
    End Function


    Protected Overrides Sub CreateChildControls()
      Controls.Clear()
      input = New TextBox()
      Me.Controls.Add(input)
      send = New Button()
      send.Text = "Enter 5-digit Zip Code"
      AddHandler send.Click, AddressOf Me.submit_Click
      Me.Controls.Add(send)

    End Sub


    Private Sub submit_Click(ByVal sender As Object, _
      ByVal e As EventArgs)

      If input.Text <> String.Empty Then
        zipCodeText = Page.Server.HtmlEncode(input.Text)
        input.Text = String.Empty
      End If

    End Sub

  End Class

  <AspNetHostingPermission(SecurityAction.Demand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  <AspNetHostingPermission(SecurityAction.InheritanceDemand, _
    Level:=AspNetHostingPermissionLevel.Minimal)> _
  Public Class WeatherWebPart
    Inherits WebPart
    Private _provider As IZipCode
    Private _zipSearch As String
    Private DisplayContent As Label

    ' This method is identified by the ConnectionConsumer 
    ' attribute, and is the mechanism for connecting with 
    ' the provider. 
    <ConnectionConsumer("Zip Code")> _
    Public Sub GetIZipCode(ByVal Provider As IZipCode)
      _provider = Provider
    End Sub


    Protected Overrides Sub OnPreRender(ByVal e As EventArgs)
      EnsureChildControls()

      If Not (Me._provider Is Nothing) Then
        _zipSearch = _provider.ZipCode.Trim()
    DisplayContent.Text = "My Zip Code is:  " + _zipSearch
      End If

    End Sub

    Protected Overrides Sub CreateChildControls()
      Controls.Clear()
      DisplayContent = New Label()
      Me.Controls.Add(DisplayContent)

    End Sub

  End Class

End Namespace

Después de cargar la página web en un explorador, haga clic en el control de lista desplegable Modo de visualización y seleccione Conectar para cambiar la página al modo de conexión. El modo de conexión usa el <asp:connectionszone> elemento para permitirle crear conexiones entre controles. En el modo de conexión, haga clic en la flecha hacia abajo en la barra de título del control código postal para activar su menú de verbos y, a continuación, haga clic en Conectar. Una vez que aparezca la interfaz de usuario de conexión, haga clic en el vínculo Crear una conexión a un consumidor . Aparece una celda que tiene un control de lista desplegable. Seleccione Control meteorológico en la lista desplegable y, a continuación, haga clic en Conectar para completar la conexión de los dos controles. Haga clic en Cerrar y, a continuación, use la lista desplegable Modo de visualización para devolver la página al modo de exploración normal. Puede escribir un código postal y el control de consumidor se actualizará con el valor que escriba. Dado que la ZipCode propiedad se marcó con el Personalizable atributo en el código fuente, este valor de propiedad persistirá en las sesiones del explorador, lo que guardará el valor especificado por un usuario. Un control de consumidor más sofisticado podría tomar la información del código postal, buscar información meteorológica en función del código y mostrarla a un usuario.

Comentarios

El WebPartManager control actúa como el centro de control o el centro de control de una aplicación de elementos web. Debe haber una instancia de control única y únicaWebPartManager en cada página que use controles de elementos web. Al igual que con la mayoría de los aspectos de las aplicaciones de elementos web, el WebPartManager control solo funciona con usuarios autenticados. Además, su funcionalidad funciona casi completamente con controles de servidor que residen en zonas de elementos web que heredan de la WebZone clase . Los controles de servidor que residen en una página fuera de estas zonas pueden tener muy poca funcionalidad de elementos web o interacción con el WebPartManager control.

Como centro de funcionalidad de elementos web en una página, el WebPartManager control lleva a cabo los tipos de tareas descritas en la tabla siguiente.

Categoría de la tarea: Qué hace el control
Seguimiento de controles de elementos web Realiza un seguimiento de los distintos tipos de controles de una página que proporcionan características de elementos web, incluidos WebPart controles, conexiones, zonas y otros.
Adición y eliminación de controles de elementos web Proporciona los métodos para agregar, eliminar y cerrar WebPart controles en una página.
Administración de conexiones Crea conexiones entre controles y supervisa las conexiones, así como los procesos de agregarlos y quitarlos.
Personalización de controles y páginas Permite a los usuarios mover controles a diferentes ubicaciones de una página e inicia las vistas en las que los usuarios pueden editar la apariencia, las propiedades y el comportamiento de los controles. Mantiene la configuración de personalización específica del usuario en cada página.
Alternar entre diferentes vistas de página Cambia una página entre diferentes vistas especializadas de la página, de modo que los usuarios puedan llevar a cabo determinadas tareas, como cambiar el diseño de página o editar controles.
Generar eventos de ciclo de vida de elementos web Define, genera y permite a los desarrolladores controlar los eventos de ciclo de vida de los controles de elementos web, como cuando se agregan, mueven, conectan o eliminan controles.
Habilitación de la importación y exportación de controles Exporta flujos XML que contienen el estado de las propiedades de WebPart los controles y permite a los usuarios importar los archivos para mayor comodidad en la personalización de controles complejos en otras páginas o sitios.

La WebPartManager clase tiene un gran conjunto de propiedades. Coherente con el WebPartManager rol de realizar el seguimiento de otros controles, tiene una serie de propiedades que hacen referencia a colecciones de controles de elementos web u otros objetos de elementos web especiales. Las AvailableTransformerspropiedades , Connections, Controls, DynamicConnectionsDisplayModes, SupportedDisplayModes, WebParts, y Zones son todas las colecciones usadas por el WebPartManager control para su seguimiento y otras tareas de administración.

Otro grupo de propiedades contiene advertencias personalizables que se aplican en determinados escenarios que se producen en una aplicación de elementos web. Entre ellas se incluyen , CloseProviderWarningy DeleteWarninglas ExportSensitiveDataWarning propiedades .

La WebPartManager clase invalida algunas de sus propiedades heredadas base, que usan muchos controles de servidor web. Entre ellas se incluyen las EnableThemingpropiedades , SkinIDy Visible .

Por último, hay un grupo de propiedades útiles para acceder al estado actual de la aplicación. La DisplayMode propiedad indica el modo de presentación actual en el que se encuentra una página. La EnableClientScript propiedad indica si un control puede representar el script del lado cliente, que es relevante en situaciones en las que los usuarios pueden tener exploradores con diferentes funcionalidades o tener desactivado el scripting. La Internals propiedad es útil para hacer referencia a una clase de utilidad que contiene las llamadas a varios métodos importantes de elementos web que se usan para casos de extensibilidad. Al ocultar las llamadas a estos métodos en una clase independiente (la WebPartManagerInternals clase ), se simplifica la propia API de la WebPartManager clase. La Personalization propiedad proporciona acceso a los objetos de personalización que almacenan la configuración de personalización de los usuarios y conservan esos datos en el almacenamiento permanente. La SelectedWebPart propiedad indica qué WebPart control de una página está seleccionado actualmente por el usuario o la aplicación. La IPersonalizable.IsDirty propiedad indica si han cambiado los datos de personalización personalizados en un WebPart control.

El WebPartManager control contiene cinco modos de visualización integrados o vistas de una página web. Los desarrolladores pueden ampliar esta característica, creando modos de presentación personalizados mediante la extensión de tipos como la WebZone clase o la ToolZone clase . Los usuarios pueden cambiar una página a los distintos modos de presentación, siempre que el tipo adecuado de controles que corresponden a un modo de presentación determinado esté presente en una página.

Nota

Es posible ampliar esta característica para que los usuarios puedan cambiar a un modo de presentación personalizado sin tener una zona correspondiente en la página. Sin embargo, el comportamiento predeterminado es que los modos de presentación corresponden a zonas.

Los modos de presentación estándar se representan mediante campos públicos en la WebPartManager clase . En la tabla siguiente se resumen los campos y los modos de presentación a los que hacen referencia. Siempre se hace referencia al modo de presentación actual de una página, como se indicó anteriormente, en la DisplayMode propiedad y el conjunto de modos de presentación que es posible en una página determinada, dado el tipo de zonas presentes en la página, se incluye en la SupportedDisplayModes propiedad .

Campo Detalles del modo de presentación
BrowseDisplayMode Vista de usuario normal de una página web; el modo de presentación predeterminado y más común.
DesignDisplayMode Vista en la que los usuarios pueden reorganizar o eliminar controles para cambiar el diseño de página.
EditDisplayMode Vista en la que se muestra una interfaz de usuario (UI) de edición; los usuarios pueden editar la apariencia, las propiedades y el comportamiento de los controles que están visibles en el modo de exploración normal.
CatalogDisplayMode Vista en la que se muestra una interfaz de usuario de catálogo; los usuarios pueden agregar controles a una página desde catálogos de controles disponibles.
ConnectDisplayMode Vista en la que se ve una interfaz de usuario de conexión; los usuarios pueden conectar, administrar o desconectar conexiones entre controles.

El WebPartManager control también contiene una serie de eventos críticos en el ciclo de vida de las páginas y controles de elementos web. Estos eventos proporcionan un control mediante programación preciso sobre el comportamiento de los controles de elementos web. La mayoría de los métodos pertenecen directamente a WebPart los controles (u otros controles de servidor o usuario que se colocan en WebPartZoneBase zonas para que puedan comportarse como WebPart controles). Sin embargo, algunos eventos pertenecen al estado de la página o las conexiones de la página. En la tabla siguiente se enumeran los eventos disponibles y se resumen sus propósitos.

Nota

En todos los casos de la tabla siguiente, la palabra "control" hace referencia a un WebPart control o a cualquier control de servidor que resida en una zona y se encapsula con un GenericWebPart objeto en tiempo de ejecución.

Evento Descripción
AuthorizeWebPart Se produce justo antes de agregar un control a una página para comprobar que está autorizado.
ConnectionsActivated Se produce después de activar todas las conexiones de una página.
ConnectionsActivating Se produce justo antes del proceso de activación de todas las conexiones de una página.
DisplayModeChanged Se produce después de cambiar el modo de presentación actual de una página.
DisplayModeChanging Se produce justo antes del proceso de cambiar el modo de presentación de una página.
SelectedWebPartChanged Se produce después de cancelar la selección de un control.
SelectedWebPartChanging Se produce justo antes del proceso de cancelar la selección de un control.
WebPartAdded Se produce después de agregar un control a una zona.
WebPartAdding Se produce justo antes del proceso de agregar un control a una zona.
WebPartClosed Se produce después de cerrar un control (quitado de una página).
WebPartClosing Se produce justo antes del proceso de cierre de un control.
WebPartDeleted Se produce después de que se haya eliminado permanentemente una instancia de un control dinámico (una que se creó mediante programación o agregada desde un catálogo).
WebPartDeleting Se produce justo antes del proceso de eliminación de un control dinámico.
WebPartMoved Se produce después de que un control se haya movido dentro de su zona o a otra zona.
WebPartMoving Se produce justo antes del proceso de mover un control.
WebPartsConnected Se produce después de que dos controles seleccionados para participar en una conexión hayan establecido la conexión.
WebPartsConnecting Se produce justo antes del proceso de conexión de dos controles.
WebPartsDisconnected Se produce después de que se hayan desconectado dos controles conectados.
WebPartsDisconnecting Se produce justo antes del proceso de desconexión de dos controles.

El WebPartManager control tiene numerosos métodos para administrar páginas de elementos web. Un conjunto grande de los métodos, no enumerados aquí, son métodos cuyos nombres toman la forma de OnEventName. Normalmente, estos métodos generan su evento asociado y proporcionan al evento un controlador de tipo WebPartEventHandler. La mayoría de estos métodos se pueden invalidar por los desarrolladores que heredan de la WebPartManager clase . Además, los desarrolladores de páginas pueden proporcionar controladores personalizados para los eventos asociados a estos métodos. Por ejemplo, en el caso del WebPartAdded evento, un desarrollador de páginas podría agregar un OnWebPartAdded atributo al <asp:webpartmanager> elemento en el marcado de una página web y, a continuación, asignar un nombre de método personalizado al atributo para proporcionar control personalizado para el evento. El atributo corresponde al OnWebPartAdded método y este patrón básico de control de eventos funciona para la mayoría de los eventos de elementos web y sus métodos asociados.

Además, el WebPartManager control tiene métodos específicos de la tarea de administrar WebPart controles (y controles de servidor o usuario usados como WebPart controles). Estos métodos incluyen , , , , , DisconnectWebPartCreateWebPartImportWebPartIsAuthorizedGetGenericWebPartExportWebPartEndWebPartEditingDeleteWebPartBeginWebPartEditingy .MoveWebPartCopyWebPartCloseWebPartAuthorizeWebPartAddWebPart

Otro conjunto de métodos es especializado para las conexiones. Esto incluye métodos como ActivateConnections, BeginWebPartConnecting, , ConnectWebPartsDisconnectWebPartsCanConnectWebPartsDisconnectWebPartEndWebPartConnectingCreateAvailableTransformers, , GetConsumerConnectionPointsy .GetProviderConnectionPoints

Por último, algunos WebPartManager métodos se centran en la funcionalidad de personalización. Entre estas se incluyen CreatePersonalization, LoadControlState, SaveCustomPersonalizationState, SetPersonalizationDirty, IPersonalizable.Load, IPersonalizable.Save y SaveControlState.

Para obtener más información sobre otros WebPartManager métodos a los que se puede acceder a través de la Internals propiedad , vea la documentación de la WebPartManagerInternals clase .

Notas a los desarrolladores de herederos

El WebPartManager control está diseñado para ampliarse. Dado que es tan central para las aplicaciones de elementos web, cuando desea extender algún tipo o control específico en el conjunto de controles de elementos web, en muchos casos también debe extender la WebPartManager clase, ya que es probable que tenga alguna propiedad o método que sea necesario para que el tipo personalizado funcione en el contexto de una aplicación de elementos web. La documentación de referencia de elementos web (vea System.Web.UI.WebControls.WebParts), al analizar cómo extender un tipo de elementos web, menciona con frecuencia lo que se debe hacer para ampliar también la WebPartManager clase o muestra cómo extenderla en un ejemplo de código.

Constructores

WebPartManager()

Inicializa una nueva instancia de la clase WebPartManager.

Campos

BrowseDisplayMode

Representa el modo de presentación predeterminado para páginas que contienen controles de elementos Web. Este campo es de solo lectura.

CatalogDisplayMode

Representa el modo de presentación utilizado para agregar controles de servidor de un catálogo de controles a una página Web. Este campo es de solo lectura.

ConnectDisplayMode

Representa el modo de presentación que se utiliza para mostrar una interfaz de usuario especial que permite a los usuarios administrar las conexiones entre controles WebPart. Este campo es de solo lectura.

DesignDisplayMode

Representa el modo de presentación utilizado para cambiar el diseño de páginas Web que contienen controles de elementos Web. Este campo es de solo lectura.

EditDisplayMode

Representa el modo de presentación en el que los usuarios finales pueden editar y modificar controles de servidor. Este campo es de solo lectura.

Propiedades

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)
AvailableTransformers

Obtiene una colección de objetos WebPartTransformer que están disponibles para su uso al crear conexiones de elementos Web entre los controles de servidor.

BindingContainer

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

(Heredado de Control)
ChildControlsCreated

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

(Heredado de Control)
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)
CloseProviderWarning

Obtiene o establece una advertencia que se muestra cuando un usuario cierra un control que actúa como proveedor de otros controles en una conexión.

Connections

Obtiene una referencia a la colección de todas las conexiones actuales en una página Web.

Context

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

(Heredado de Control)
Controls

Obtiene la colección de todos los controles WebPart, de servidor o de usuario contenidos en zonas WebPartZoneBase de una página Web y administrados por el control WebPartManager.

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)
DeleteWarning

Obtiene o establece un mensaje de advertencia personalizado que se muestra a los usuarios finales cuando eliminan un control.

DesignMode

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

(Heredado de Control)
DisplayMode

Obtiene o establece el modo de presentación activo para una página Web que contiene controles de elementos Web.

DisplayModes

Obtiene una colección de sólo lectura de todos los modos de presentación asociados a un control WebPartManager.

DynamicConnections

Obtiene la colección de todas las conexiones dinámicas que actualmente existen en una página Web.

EnableClientScript

Obtiene o establece un valor que determina si el scripting de cliente está habilitado en la página Web que contiene un control WebPartManager.

EnableTheming

Obtiene un valor que indica que el uso de temas está habilitado en una página Web.

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)
ExportSensitiveDataWarning

Obtiene o establece el texto de un mensaje de advertencia que se muestra cuando un usuario intenta exportar datos de estado confidenciales desde un control WebPart.

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)
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)
Internals

Obtiene una referencia a la clase WebPartManagerInternals, que se utiliza para combinar y separar un conjunto de métodos implementados actualmente en la clase WebPartManager y son muy útiles para los desarrolladores de controles.

IsChildControlStateCleared

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

(Heredado de Control)
IsCustomPersonalizationStateDirty

Obtiene un valor que indica si se han realizado cambios de personalización que afectan a detalles de personalización de nivel de página administrados por el control WebPartManager.

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)
MediumPermissionSet

Obtiene un objeto PermissionSet que solo permite el permiso Execution y el permiso Medium.

MinimalPermissionSet

Obtiene un objeto PermissionSet que solo permite el permiso Execution y el permiso Minimal.

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)
Personalization

Obtiene una referencia a un objeto que contiene los datos de personalización para una página Web.

RenderingCompatibility

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

(Heredado de Control)
SelectedWebPart

Obtiene una referencia a un control WebPart u otro control de servidor que está seleccionado actualmente para edición o para crear una conexión con otro control.

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

Obtiene o establece una cadena vacía ("") para que no se pueda aplicar ninguna máscara al control WebPartManager.

StaticConnections

Obtiene una referencia a la colección de todos los objetos WebPartConnection de una página Web que se definen como conexiones estáticas.

SupportedDisplayModes

Obtiene una colección de sólo lectura de todos los modos de presentación que están disponibles en una página Web determinada.

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

Obtiene un valor que permite que los controles secundarios sean visibles.

WebParts

Obtiene una referencia a todos los controles WebPart cuyo seguimiento efectúa el control WebPartManager en una página Web.

Zones

Obtiene una referencia a una colección de todas las zonas WebPartZoneBase de una página Web.

Métodos

ActivateConnections()

Activa todas las conexiones de una página Web que están actualmente inactivas.

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)
AddWebPart(WebPart, WebPartZoneBase, Int32)

Proporciona el método de programación estándar para agregar controles WebPart a una página Web.

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)
BeginWebPartConnecting(WebPart)

Inicia el proceso de conectar dos controles WebPart.

BeginWebPartEditing(WebPart)

Inicia el proceso de editar un control WebPart.

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)
CanConnectWebParts(WebPart, ProviderConnectionPoint, WebPart, ConsumerConnectionPoint)

Comprueba los controles WebPart que participarán en una conexión para determinar si son capaces de conectarse, cuando los controles consumidor y proveedor tienen interfaces compatibles y no se necesita un objeto WebPartTransformer.

CanConnectWebParts(WebPart, ProviderConnectionPoint, WebPart, ConsumerConnectionPoint, WebPartTransformer)

Comprueba los controles WebPart que van a participar en una conexión para determinar si pueden conectarse y utiliza un objeto WebPartTransformer para crear la conexión entre un consumidor y un proveedor incompatibles.

CheckRenderClientScript()

Comprueba las funciones del explorador que realiza la solicitud y el valor de la propiedad EnableClientScript para determinar si se va a representar script de cliente.

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)
CloseWebPart(WebPart)

Cierra un control WebPart de manera que no se representa en una página Web, pero se puede volver a abrir.

ConnectWebParts(WebPart, ProviderConnectionPoint, WebPart, ConsumerConnectionPoint)

Crea una conexión entre dos controles WebPart o GenericWebPart utilizando sólo las referencias a los controles y sus objetos ConnectionPoint especificados.

ConnectWebParts(WebPart, ProviderConnectionPoint, WebPart, ConsumerConnectionPoint, WebPartTransformer)

Crea una conexión entre dos controles WebPart o GenericWebPart utilizando las referencias a los controles, sus objetos ConnectionPoint especificados y un objeto WebPartTransformer.

CopyWebPart(WebPart)

Las utiliza el conjunto de controles de elementos Web para crear una copia de un control WebPart o un control de servidor para el fin de agregar el control a una página Web.

CreateAvailableTransformers()

Crea un conjunto de transformadores especificados en el archivo de configuración de un sitio Web y los agrega a la colección de transformadores a los que hace referencia la propiedad AvailableTransformers.

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()

Devuelve la colección de todos los controles administrados por el control WebPartManager en una página Web. Esta clase no puede heredarse.

CreateDisplayModes()

Crea el conjunto de todos los posibles modos de presentación para una aplicación de elementos Web.

CreateDynamicConnectionID()

Obtiene un valor único que sirve como id. de una conexión dinámica.

CreateDynamicWebPartID(Type)

Genera un id. único para un control WebPart dinámico.

CreateErrorWebPart(String, String, String, String, String)

Crea un control especial que se inserta en una página y se muestra a los usuarios finales cuando, por algún motivo, se produce un error al intentar cargar o crear un control WebPart.

CreatePersonalization()

Devuelve un objeto de personalización que contiene los datos de personalización de un usuario para la página Web actual.

CreateWebPart(Control)

Ajusta un control de servidor que no es un control WebPart con un objeto GenericWebPart para que el control pueda tener la funcionalidad de los elementos Web.

DataBind()

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

(Heredado de Control)
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)
DeleteWebPart(WebPart)

Quita permanentemente una instancia dinámica de un control WebPart de una página Web.

DisconnectWebPart(WebPart)

Quita un control WebPart o control de servidor que se cierra o elimina de cualquier conexión en la que esté participando.

DisconnectWebParts(WebPartConnection)

Realiza el proceso de desconectar controles de servidor que se conectan en una página Web.

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)
EndWebPartConnecting()

Finaliza el proceso de conectar un control WebPart a otro control.

EndWebPartEditing()

Completa el proceso de editar un control WebPart.

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)
ExportWebPart(WebPart, XmlWriter)

Crea un archivo de descripción XML que contiene los datos de estado y de propiedades correspondientes a un control de servidor.

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()

Se reemplaza para evitar que el foco se establezca en el control WebPartManager, porque no tiene ninguna interfaz de usuario.

GetConsumerConnectionPoints(WebPart)

Recupera la colección de objetos ConsumerConnectionPoint que pueden actuar como puntos de conexión de un control de servidor que, a su vez, actúa como consumidor en una conexión de elementos Web.

GetCurrentWebPartManager(Page)

Recupera una referencia a la instancia actual del control WebPartManager en una página.

GetDesignModeState()

Obtiene datos en tiempo de diseño para un control.

(Heredado de Control)
GetDisplayTitle(WebPart)

Obtiene una cadena que contiene el valor de la propiedad DisplayTitle en un control WebPart.

GetExportUrl(WebPart)

Obtiene la ruta de acceso virtual relativa y la cadena de consulta que forman parte de la solicitud cuando un usuario intenta exportar un control WebPart.

GetGenericWebPart(Control)

Obtiene una referencia a la instancia del control GenericWebPart que contiene un control de servidor.

GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetProviderConnectionPoints(WebPart)

Recupera la colección de objetos ProviderConnectionPoint que pueden actuar como puntos de conexión de un control de servidor que, a su vez, actúa como proveedor en una conexión de elementos Web.

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)
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)
ImportWebPart(XmlReader, String)

Importa un archivo de descripción XML que contiene datos de estado y de propiedades de un control WebPart y aplica los datos al control.

IsAuthorized(Type, String, String, Boolean)

Realiza los pasos finales para determinar si un control tiene autorización para ser agregado a una página.

IsAuthorized(WebPart)

Realiza los pasos iniciales para determinar si un control tiene autorización para ser agregado a una página.

IsLiteralContent()

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

(Heredado de Control)
LoadControlState(Object)

Carga los datos de estado del control que se guardaron de una solicitud de página anterior y tienen que restaurarse en una solicitud subsiguiente.

LoadCustomPersonalizationState(PersonalizationDictionary)

Almacena los datos de personalización a medida que se ha pasado el control WebPartManager de los objetos de personalización que se utilizará más adelante durante el proceso de inicialización.

LoadViewState(Object)

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

(Heredado de Control)
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)
MoveWebPart(WebPart, WebPartZoneBase, Int32)

Mueve un control WebPart o un control de servidor de una zona WebPartZoneBase a otra o a una posición nueva dentro de la misma zona.

OnAuthorizeWebPart(WebPartAuthorizationEventArgs)

Produce el evento AuthorizeWebPart e invoca un controlador para el evento, si existe uno.

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)
OnConnectionsActivated(EventArgs)

Produce el evento ConnectionsActivated para indicar que una página y sus controles se han cargado, y que las conexiones de la página se han activado para empezar a compartir datos.

OnConnectionsActivating(EventArgs)

Produce el evento ConnectionsActivating para indicar que una página y sus controles se han cargado, y que el proceso de activar las conexiones puede comenzar.

OnDataBinding(EventArgs)

Genera el evento DataBinding.

(Heredado de Control)
OnDisplayModeChanged(WebPartDisplayModeEventArgs)

Produce el evento DisplayModeChanged para indicar que el control WebPartManager ha completado el proceso de cambiar de un modo de presentación a otro en una página Web.

OnDisplayModeChanging(WebPartDisplayModeCancelEventArgs)

Produce el evento DisplayModeChanging para indicar que el control WebPartManager está en el proceso de cambiar de un modo de presentación a otro en una página Web.

OnInit(EventArgs)

Provoca el evento Init, que es el primer evento en el ciclo de vida del control WebPartManager.

OnLoad(EventArgs)

Genera el evento Load.

(Heredado de Control)
OnPreRender(EventArgs)

Produce el evento PreRender, que tiene lugar justo antes de que se represente un control WebPartManager en una página Web.

OnSelectedWebPartChanged(WebPartEventArgs)

Produce el evento SelectedWebPartChanged, que tiene lugar después de que se active o se desactive la selección de un control WebPart.

OnSelectedWebPartChanging(WebPartCancelEventArgs)

Produce el evento SelectedWebPartChanging, que tiene lugar durante el proceso de cambiar el control WebPart que está activado actualmente.

OnUnload(EventArgs)

Produce el evento base Unload y quita la instancia de WebPartManager de una página Web.

OnWebPartAdded(WebPartEventArgs)

Produce el evento WebPartAdded, que tiene lugar después de que un control WebPart se ha agregado a una página.

OnWebPartAdding(WebPartAddingEventArgs)

Produce el evento WebPartAdding, que tiene lugar durante el proceso de agregar un control WebPart (o un control de servidor o de usuario) a una zona WebPartZoneBase.

OnWebPartClosed(WebPartEventArgs)

Produce el evento WebPartClosed para señalar que un control se ha quitado de una página.

OnWebPartClosing(WebPartCancelEventArgs)

Produce el evento WebPartClosing, que tiene lugar durante el proceso de un control WebPart o un control de servidor que se quita de una página.

OnWebPartDeleted(WebPartEventArgs)

Produce el evento WebPartDeleted, que tiene lugar después de que un control WebPart se ha eliminado permanentemente de una página.

OnWebPartDeleting(WebPartCancelEventArgs)

Produce el evento WebPartDeleting, que indica que un control WebPart dinámico (o un control de usuario o de servidor incluido en una zona WebPartZoneBase) está en el proceso de eliminarse.

OnWebPartMoved(WebPartEventArgs)

Produce el evento WebPartMoved, que tiene lugar después de que un control WebPart se ha movido a una ubicación diferente en una página.

OnWebPartMoving(WebPartMovingEventArgs)

Produce el evento WebPartMoving, que indica que un control WebPart o un control de usuario o de servidor incluido en una zona WebPartZoneBase está en el proceso de moverse.

OnWebPartsConnected(WebPartConnectionsEventArgs)

Produce el evento WebPartsConnected, que tiene lugar después de que se ha establecido una conexión entre los controles WebPart.

OnWebPartsConnecting(WebPartConnectionsCancelEventArgs)

Produce el evento WebPartsConnecting, que tiene lugar durante el proceso de establecer una conexión entre dos controles WebPart o dos controles de servidor o de usuario en una zona WebPartZoneBase.

OnWebPartsDisconnected(WebPartConnectionsEventArgs)

Produce el evento WebPartsDisconnected, que tiene lugar después de que haya finalizado una conexión entre controles WebPart.

OnWebPartsDisconnecting(WebPartConnectionsCancelEventArgs)

Produce el evento WebPartsDisconnecting, que indica que dos controles WebPart o dos controles de usuario o de servidor incluidos en una zona WebPartZoneBase están en el proceso de finalizar una conexión.

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)
RegisterClientScript()

Permite que el control WebPartManager emita script de cliente que se utiliza para las distintas características de personalización, como arrastrar controles WebPart en una página Web.

RemovedControl(Control)

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

(Heredado de Control)
Render(HtmlTextWriter)

Se reemplaza para evitar que el control WebPartManager represente cualquier contenido.

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)
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)
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 datos de estado para el control WebPartManager a fin de que los datos se puedan restaurar en una solicitud futura a la página Web que contenga el control.

SaveCustomPersonalizationState(PersonalizationDictionary)

Guarda los datos de estado de personalización personalizados que mantiene el control WebPartManager, para que se puedan volver a cargar cada vez que se vuelva a cargar la página.

SaveViewState()

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

(Heredado de Control)
SetDesignModeState(IDictionary)

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

(Heredado de Control)
SetPersonalizationDirty()

Establece un marcador que muestra que los datos de personalización del control WebPartManager personalizado han cambiado.

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)
SetSelectedWebPart(WebPart)

Establece el valor de la propiedad SelectedWebPart igual al control WebPart o control de servidor actualmente seleccionado.

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()

Aplica los datos de estado de personalización al control WebPartManager y llama al método base para permitir el seguimiento de los cambios a los datos de estado de la vista en el control.

Eventos

AuthorizeWebPart

Se produce cuando se llama al método IsAuthorized para determinar si se puede agregar un control WebPart o un control de servidor a una página.

ConnectionsActivated

Se produce después de que todas las conexiones de elementos Web actuales de una página están conectados y, además, han empezado a compartir activamente datos entre los controles consumidor y proveedor que participan en cada conexión.

ConnectionsActivating

Se produce durante el proceso de activar todas las conexiones de elementos Web establecidas en una página Web.

DataBinding

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

(Heredado de Control)
DisplayModeChanged

Se produce después de que el modo de presentación actual en una página de elementos Web ha cambiado.

DisplayModeChanging

Se produce después de que un usuario haga clic en una página Web en un verbo que comienza el proceso de cambiar a un modo de presentación diferente.

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)
SelectedWebPartChanged

Se produce después de que la selección de un control WebPart ha cambiado y se ha movido a otro control en una página Web.

SelectedWebPartChanging

Se produce durante el proceso de cambiar qué control WebPart o control de servidor está seleccionado actualmente en una página Web.

Unload

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

(Heredado de Control)
WebPartAdded

Se produce después de agregar un control WebPart dinámico u otro control de servidor a una zona WebPartZoneBase para indicar que el control se agregó correctamente.

WebPartAdding

Aparece durante el proceso de agregar un control WebPart dinámico u otro control de servidor a una zona WebPartZoneBase.

WebPartClosed

Aparece cuando un control WebPart (o un control de usuario o de servidor) se quita de una página.

WebPartClosing

Aparece durante el proceso de quitar un control WebPart (o un control de usuario o de servidor) de una página.

WebPartDeleted

Se produce después de eliminar un control WebPart u otro control de servidor de una zona WebPartZoneBase.

WebPartDeleting

Aparece durante el proceso de eliminar permanentemente una instancia de un control WebPart dinámico u otro control de servidor de una zona WebPartZoneBase.

WebPartMoved

Se produce después de mover un control WebPart o un control de servidor a una ubicación diferente en una página Web.

WebPartMoving

Se produce durante el proceso de mover un control WebPart u otro control de servidor contenido en una zona WebPartZoneBase.

WebPartsConnected

Se produce después de establecer una conexión concreta entre controles WebPart (o controles de servidor o de usuario).

WebPartsConnecting

Aparece durante el proceso de crear una conexión entre controles WebPart (o controles de usuario o de servidor colocados en una zona WebPartZoneBase).

WebPartsDisconnected

Se produce después de finalizar una conexión entre dos controles WebPart o controles de servidor.

WebPartsDisconnecting

Se produce durante el proceso de finalizar la conexión entre controles WebPart o controles de servidor previamente conectados.

Implementaciones de interfaz explícitas

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)
IPersonalizable.IsDirty

Obtiene un valor que indica si los datos de estado de personalización administrados por el control WebPartManager han cambiado en una página Web.

IPersonalizable.Load(PersonalizationDictionary)

Devuelve los datos de estado de personalización personalizados y anteriormente cargados que deben cargarse en el control WebPartManager.

IPersonalizable.Save(PersonalizationDictionary)

Guarda los datos de estado de personalización propios que son administrados por el control WebPartManager.

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