Compartilhar via


WebPartManager Classe

Definição

Serve como a classe central do conjunto de controles de Web Parts, gerenciando todos os controles, funcionalidade e eventos de Web Parts que ocorrem em uma página da 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
Herança
WebPartManager
Atributos
Implementações

Exemplos

O exemplo de código a seguir demonstra o uso declarativo e programático do WebPartManager controle.

O exemplo de código tem quatro partes:

  • Um controle de usuário que permite alterar os modos de exibição em uma página de Web Parts.

  • Uma página da Web que contém dois controles personalizados WebPart que podem ser conectados e um <asp:webpartmanager> elemento .

  • Um arquivo de código-fonte que contém dois controles personalizados WebPart e uma interface personalizada.

  • Uma explicação de como o exemplo funciona em um navegador.

O controle de usuário tem um controle de lista suspensa que mostra os possíveis modos de exibição em uma página, considerando os controles de Web Parts presentes na página. Na página da Web para este exemplo de código, esse controle de usuário é declarado logo abaixo do WebPartManager elemento na marcação da página e há uma Register diretiva próxima à parte superior da página da Web para registrar o controle. Para obter detalhes sobre modos de exibição e uma descrição do código-fonte nesse controle, consulte Passo a passo: alterando modos de exibição em uma página de Web Parts.

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

A marcação declarativa da página da Web contém Register diretivas para o controle de usuário e os controles personalizados. Há um <asp:webpartmanager> elemento , um <asp:webpartzone> elemento para conter os controles personalizados e um <asp:connectionszone> elemento . A página também contém algum código embutido que manipula eventos relacionados à conexão para o WebPartManager controle; você pode ver o efeito desse código à medida que conecta e desconecta 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>

A terceira parte do exemplo é o código-fonte dos controles. Observe que há uma interface chamada IZipCodee essa interface é implementada na ZipCodeWebPart classe . Essa classe tem um método de retorno de chamada especial chamado ProvideIZipCode que serve como um provedor. O outro tipo, chamado WeatherWebPart, também é implementado com um método especial chamado GetIZipCode, que permite que o controle atue como um consumidor do outro controle.

Para que o exemplo de código seja executado, você deve compilar esse código-fonte. Você pode compilá-lo explicitamente e colocar o assembly resultante na pasta Bin do seu site ou no cache de assembly global. Como alternativa, você pode colocar o código-fonte na pasta App_Code do site, em que ele será compilado dinamicamente em tempo de execução. Este exemplo de código pressupõe que você compilou a origem em um assembly e a Register diretiva na página da Web faz referência ao nome do assembly. Para obter um passo a passo que demonstra como compilar, consulte Passo a passo : Desenvolvendo e usando um controle 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

Depois de carregar a página da Web em um navegador, clique no controle de lista suspensa Modo de Exibição e selecione Conectar para alternar a página para o modo de conexão. O modo de conexão usa o <asp:connectionszone> elemento para permitir que você crie conexões entre controles. No modo de conexão, clique na seta para baixo na barra de título do controle CEP para ativar seu menu de verbos e clique em Conectar. Depois que a interface do usuário da conexão for exibida, clique no link Criar uma conexão com um Consumidor . Uma célula é exibida com um controle de lista suspensa. Selecione Controle do Tempo na lista suspensa e clique em Conectar para concluir a conexão dos dois controles. Clique em Fechar e, em seguida, use a lista suspensa Modo de Exibição para retornar a página ao modo de navegação normal. Você pode inserir um CEP e o controle do consumidor será atualizado com o valor inserido. Como a ZipCode propriedade foi marcada com o Personalizable atributo no código-fonte, esse valor de propriedade persistirá entre as sessões do navegador, salvando assim o valor inserido por um usuário. Um controle de consumidor mais sofisticado pode pegar as informações de CEP, pesquisar informações meteorológicas com base no código e exibi-la para um usuário.

Comentários

O WebPartManager controle atua como o hub ou centro de controle de um aplicativo de Web Parts. Deve haver uma e apenas uma instância deWebPartManager controle em cada página que usa controles de Web Parts. Assim como acontece com a maioria dos aspectos dos aplicativos de Web Parts, o WebPartManager controle funciona apenas com usuários autenticados. Além disso, sua funcionalidade funciona quase inteiramente com controles de servidor que residem em zonas de Web Parts que herdam da WebZone classe . Os controles de servidor que residem em uma página fora dessas zonas podem ter muito pouca funcionalidade de Web Parts ou interação com o WebPartManager controle.

Como o hub para funcionalidade de Web Parts em uma página, o WebPartManager controle executa os tipos de tarefas descritos na tabela a seguir.

Categoria da tarefa O que o controle faz
Controles de Web Parts de acompanhamento Controla os vários tipos diferentes de controles em uma página que fornece recursos de Web Parts, incluindo WebPart controles, conexões, zonas e outros.
Adicionar e remover controles de Web Parts Fornece os métodos para adicionar, excluir e fechar WebPart controles em uma página.
Administrando conexões Cria conexões entre controles e monitora as conexões, bem como os processos de adição e remoção delas.
Personalizando controles e páginas Permite que os usuários movam controles para locais diferentes em uma página e inicia as exibições nas quais os usuários podem editar a aparência, as propriedades e o comportamento dos controles. Mantém as configurações de personalização específicas do usuário em cada página.
Alternar entre diferentes modos de exibição de página Alterna uma página entre diferentes exibições especializadas da página, para que os usuários possam realizar determinadas tarefas, como alterar o layout da página ou editar controles.
Gerando eventos de ciclo de vida de Web Parts Define, gera e permite que os desenvolvedores lidem com eventos de ciclo de vida de controles de Web Parts, como quando os controles estão sendo adicionados, movidos, conectados ou excluídos.
Habilitando a importação e exportação de controles Exporta fluxos XML que contêm o estado das propriedades dos WebPart controles e permite que os usuários importem os arquivos para conveniência na personalização de controles complexos em outras páginas ou sites.

A WebPartManager classe tem um grande conjunto de propriedades. Consistente com a WebPartManager função de acompanhar outros controles, ele tem várias propriedades que fazem referência a coleções de controles de Web Parts ou outros objetos de Web Parts especiais. As AvailableTransformerspropriedades , Connections, Controls, DisplayModes, SupportedDisplayModesDynamicConnections, WebParts, e Zones são todas as coleções usadas pelo WebPartManager controle para seu acompanhamento e outras tarefas de gerenciamento.

Outro grupo de propriedades contém avisos personalizáveis que se aplicam a determinados cenários que ocorrem em um aplicativo de Web Parts. Elas incluem as CloseProviderWarningpropriedades , , DeleteWarninge ExportSensitiveDataWarning .

A WebPartManager classe substitui algumas de suas propriedades herdadas de base, que são usadas por muitos controles de servidor Web. Elas incluem as EnableThemingpropriedades , SkinIDe Visible .

Por fim, há um grupo de propriedades úteis para acessar o estado atual do aplicativo. A DisplayMode propriedade indica o modo de exibição atual em que uma página está. A EnableClientScript propriedade indica se um controle tem permissão para renderizar o script do lado do cliente, o que é relevante em situações em que os usuários podem ter navegadores com recursos diferentes ou ter scripts desativados. A Internals propriedade é útil para referenciar uma classe de utilitário que contém as chamadas para vários métodos importantes de Web Parts que são usados para casos de extensibilidade. Ocultando as chamadas para esses métodos em uma classe separada (a WebPartManagerInternals classe), a WebPartManager própria API da classe é simplificada. A Personalization propriedade fornece acesso aos objetos de personalização que armazenam as configurações de personalização dos usuários e persistem esses dados no armazenamento permanente. A SelectedWebPart propriedade indica qual WebPart controle em uma página está selecionado atualmente pelo usuário ou pelo aplicativo. A IPersonalizable.IsDirty propriedade indica se os dados de personalização personalizados em um WebPart controle foram alterados.

O WebPartManager controle contém cinco modos de exibição internos ou exibições de uma página da Web. Os desenvolvedores podem estender esse recurso, criando modos de exibição personalizados estendendo tipos como a WebZone classe ou a ToolZone classe . Os usuários podem alternar uma página para os vários modos de exibição, desde que o tipo adequado de controles que correspondem a um determinado modo de exibição esteja presente em uma página.

Observação

É possível estender esse recurso para que os usuários possam alternar para um modo de exibição personalizado sem ter uma zona correspondente na página. No entanto, o comportamento padrão é que os modos de exibição correspondam às zonas.

Os modos de exibição padrão são representados por campos públicos na WebPartManager classe . A tabela a seguir resume os campos e os modos de exibição a que eles se referem. O modo de exibição atual de uma página, conforme observado acima, sempre é referenciado na DisplayMode propriedade e o conjunto de modos de exibição que é possível em uma página específica, dado o tipo de zonas presentes na página, está contido na SupportedDisplayModes propriedade .

Campo Exibir detalhes do modo
BrowseDisplayMode A exibição normal do usuário de uma página da Web; o modo de exibição padrão e mais comum.
DesignDisplayMode A exibição na qual os usuários podem reorganizar ou excluir controles para alterar o layout da página.
EditDisplayMode A exibição na qual uma interface do usuário (interface do usuário) de edição fica visível; os usuários podem editar a aparência, as propriedades e o comportamento dos controles visíveis no modo de navegação normal.
CatalogDisplayMode A exibição na qual uma interface do usuário do catálogo fica visível; os usuários podem adicionar controles a uma página de catálogos de controles disponíveis.
ConnectDisplayMode A exibição na qual uma interface do usuário de conexão fica visível; os usuários podem se conectar, gerenciar ou desconectar conexões entre controles.

O WebPartManager controle também contém vários eventos que são críticos no ciclo de vida de páginas e controles de Web Parts. Esses eventos fornecem controle programático preciso sobre o comportamento dos controles de Web Parts. A maioria dos métodos pertence diretamente a WebPart controles (ou outros controles de servidor ou usuário que são colocados em WebPartZoneBase zonas para que possam se comportar como WebPart controles). No entanto, alguns eventos pertencem ao estado da página ou conexões na página. A tabela a seguir lista os eventos disponíveis e resume suas finalidades.

Observação

Em todos os casos na tabela a seguir, a palavra "control" refere-se a um WebPart controle ou qualquer controle de servidor que reside em uma zona e é encapsulado com um GenericWebPart objeto em tempo de execução.

Evento Descrição
AuthorizeWebPart Ocorre pouco antes de um controle ser adicionado a uma página para verificar se ele está autorizado.
ConnectionsActivated Ocorre depois que todas as conexões em uma página são ativadas.
ConnectionsActivating Ocorre pouco antes do processo de ativação de todas as conexões em uma página.
DisplayModeChanged Ocorre depois que o modo de exibição atual de uma página é alterado.
DisplayModeChanging Ocorre pouco antes do processo de alteração do modo de exibição de uma página.
SelectedWebPartChanged Ocorre depois que a seleção de um controle é cancelada.
SelectedWebPartChanging Ocorre pouco antes do processo de cancelamento da seleção de um controle.
WebPartAdded Ocorre depois que um controle é adicionado a uma zona.
WebPartAdding Ocorre pouco antes do processo de adição de um controle a uma zona.
WebPartClosed Ocorre depois que um controle é fechado (removido de uma página).
WebPartClosing Ocorre pouco antes do processo de fechamento de um controle.
WebPartDeleted Ocorre depois que uma instância de um controle dinâmico (que foi criada programaticamente ou adicionada de um catálogo) foi excluída permanentemente.
WebPartDeleting Ocorre pouco antes do processo de exclusão de um controle dinâmico.
WebPartMoved Ocorre depois que um controle é movido dentro de sua zona ou para outra zona.
WebPartMoving Ocorre pouco antes do processo de mover um controle.
WebPartsConnected Ocorre depois que dois controles selecionados para participação em uma conexão estabeleceram a conexão.
WebPartsConnecting Ocorre pouco antes do processo de conexão de dois controles.
WebPartsDisconnected Ocorre depois que dois controles conectados são desconectados.
WebPartsDisconnecting Ocorre pouco antes do processo de desconexão de dois controles.

O WebPartManager controle tem vários métodos para gerenciar páginas de Web Parts. Um grande conjunto de métodos, não listados aqui, são métodos cujos nomes assumem a forma de OnEventName. Esses métodos normalmente geram o evento associado e fornecem ao evento um manipulador do tipo WebPartEventHandler. A maioria desses métodos pode ser substituída por desenvolvedores que herdam da WebPartManager classe . Além disso, os desenvolvedores de página podem fornecer manipuladores personalizados para os eventos associados a esses métodos. Por exemplo, no caso do evento, um desenvolvedor de WebPartAdded página poderia adicionar um OnWebPartAdded atributo ao <asp:webpartmanager> elemento na marcação de uma página da Web e, em seguida, atribuir um nome de método personalizado ao atributo para fornecer tratamento personalizado para o evento. O atributo corresponde ao OnWebPartAdded método e esse padrão básico de manipulação de eventos funciona para a maioria dos eventos de Web Parts e seus métodos associados.

Além disso, o WebPartManager controle tem métodos específicos para a tarefa de gerenciar WebPart controles (e controles de servidor ou usuário usados como WebPart controles). Esses métodos incluem , , , , CopyWebPart, CreateWebPartDeleteWebPart, DisconnectWebPart, BeginWebPartEditing, EndWebPartEditing, ExportWebPart, GetGenericWebPart, ImportWebPart, IsAuthorizede MoveWebPart. CloseWebPartAuthorizeWebPartAddWebPart

Outro conjunto de métodos é especializado para conexões. Isso inclui métodos como ActivateConnections, BeginWebPartConnecting, CanConnectWebParts, ConnectWebParts, CreateAvailableTransformers, DisconnectWebPart, , DisconnectWebParts, EndWebPartConnecting, GetConsumerConnectionPointse GetProviderConnectionPoints.

Por fim, alguns WebPartManager métodos se concentram na funcionalidade de personalização. Elas incluem CreatePersonalization, LoadControlState, SaveCustomPersonalizationState, SetPersonalizationDirty, IPersonalizable.Load, IPersonalizable.Save e SaveControlState.

Para obter mais informações sobre outros WebPartManager métodos acessíveis por meio da Internals propriedade , consulte a documentação da WebPartManagerInternals classe .

Notas aos Herdeiros

O WebPartManager controle foi projetado para ser estendido. Como ele é tão central para aplicativos de Web Parts, quando você deseja estender algum tipo ou controle específico no conjunto de controle de Web Parts, em muitos casos você também deve estender a WebPartManager classe, pois é provável que ela tenha alguma propriedade ou método necessário para fazer seu tipo personalizado funcionar no contexto de um aplicativo de Web Parts. A documentação de referência de Web Parts (consulte System.Web.UI.WebControls.WebParts), ao discutir como estender um tipo de Web Parts, frequentemente menciona o que precisa ser feito para estender a WebPartManager classe também ou mostra como estendê-la em um exemplo de código.

Construtores

WebPartManager()

Inicializa uma nova instância da classe WebPartManager.

Campos

BrowseDisplayMode

Representa o modo de exibição padrão para páginas que contêm controles de Web Parts. Este campo é somente leitura.

CatalogDisplayMode

Representa o modo de exibição usado para adicionar controles de servidor de um catálogo de controles a uma página da Web. Este campo é somente leitura.

ConnectDisplayMode

Representa o modo de exibição usado para exibir uma UI (interface do usuário) especial para os usuários gerenciarem as conexões entre controles WebPart. Este campo é somente leitura.

DesignDisplayMode

Representa o modo de exibição usado para alterar o layout de páginas da Web que contenham controles de Web Parts. Este campo é somente leitura.

EditDisplayMode

Representa o modo de exibição em que os usuários finais podem editar e modificar controles de servidor. Este campo é somente leitura.

Propriedades

Adapter

Obtém o adaptador específico de navegador para o controle.

(Herdado de Control)
AppRelativeTemplateSourceDirectory

Obtém ou define o diretório virtual relativo de aplicativo do objeto Page ou UserControl que contém este controle.

(Herdado de Control)
AvailableTransformers

Obtém uma coleção de objetos WebPartTransformer que estão disponíveis para uso na criação de conexões de Web Parts entre controles de servidor.

BindingContainer

Obtém o controle que contém a vinculação de dados desse controle.

(Herdado de Control)
ChildControlsCreated

Obtém um valor que indica se os controles filho do controle de servidor foram criados.

(Herdado de Control)
ClientID

Obtém a ID de controle de marcação HTML gerada pelo ASP.NET.

(Herdado de Control)
ClientIDMode

Obtém ou define o algoritmo usado para gerar o valor da propriedade ClientID.

(Herdado de Control)
ClientIDSeparator

Obtém um valor de caractere que representa o caractere separador usado na propriedade ClientID.

(Herdado de Control)
CloseProviderWarning

Obtém ou define um aviso que é exibido quando um usuário fecha um controle que atua como um provedor para outros controles em uma conexão.

Connections

Obtém uma referência à coleção de todas as conexões atuais em uma página da Web.

Context

Obtém o objeto HttpContext associado ao controle de servidor para a solicitação da Web atual.

(Herdado de Control)
Controls

Obtém a coleção de todos os WebPart, servidores ou controles de usuário que estão contidos em zonas WebPartZoneBase em uma página da Web e são gerenciados pelo controle WebPartManager.

DataItemContainer

Obtém uma referência ao contêiner de nomenclatura se o contêiner de nomenclatura implementa o IDataItemContainer.

(Herdado de Control)
DataKeysContainer

Obtém uma referência ao contêiner de nomenclatura se o contêiner de nomenclatura implementa o IDataKeysControl.

(Herdado de Control)
DeleteWarning

Obtém ou define uma mensagem de aviso personalizada exibida aos usuários finais quando eles excluem um controle.

DesignMode

Obtém um valor que indica se um controle está sendo usado em uma superfície de design.

(Herdado de Control)
DisplayMode

Obtém ou define o modo de exibição ativo para uma página da Web que contém controles Web Part.

DisplayModes

Obtém uma coleção somente leitura de todos os modos de exibição que estão associados com um controle WebPartManager.

DynamicConnections

Obtém a coleção de todas as conexões dinâmicas que existem atualmente em uma página da Web.

EnableClientScript

Obtém ou define um valor que determina se o script do lado do cliente está habilitado na página da Web que contém um controle WebPartManager.

EnableTheming

Obtém um valor que indica que o uso de temas está habilitado em uma página da Web.

EnableViewState

Obtém ou define um valor que indica se o controle de servidor persiste seu estado de exibição e o estado de exibição de quaisquer controles filho que ele contém, para o cliente solicitante.

(Herdado de Control)
Events

Obtém uma lista de delegados de manipulador de eventos para o controle. Esta propriedade é somente para leitura.

(Herdado de Control)
ExportSensitiveDataWarning

Obtém ou define o texto de uma mensagem de aviso que é exibida quando um usuário tenta exportar dados confidenciais de estado de um controle WebPart.

HasChildViewState

Obtém um valor que indica se os controles filho do controle de servidor atual têm alguma configuração de estado de exibição salva.

(Herdado de Control)
ID

Obtém ou define o identificador programático atribuído ao controle de servidor.

(Herdado de Control)
IdSeparator

Obtém o caractere usado para separar identificadores de controle.

(Herdado de Control)
Internals

Obtém uma referência à classe WebPartManagerInternals, que é usada para combinar e separar um conjunto de métodos que estão, na verdade, implementados na classe WebPartManager, mas geralmente são úteis para os desenvolvedores de controle.

IsChildControlStateCleared

Obtém um valor que indica se os controles contidos dentro deste controle têm estado de controle.

(Herdado de Control)
IsCustomPersonalizationStateDirty

Obtém um valor que indica se foram feitas alterações de personalização que afetam os detalhes de personalização de nível de página controlados pelo controle WebPartManager.

IsTrackingViewState

Obtém um valor que indica se o controle de servidor está salvando alterações no estado de exibição.

(Herdado de Control)
IsViewStateEnabled

Obtém um valor que indica se o estado de exibição está habilitado para esse controle.

(Herdado de Control)
LoadViewStateByID

Obtém um valor que indica se o controle participa do carregamento do estado de exibição por ID em vez do índice.

(Herdado de Control)
MediumPermissionSet

Obtém um objeto PermissionSet que concede apenas permissão Execution e permissão Medium.

MinimalPermissionSet

Obtém um objeto PermissionSet que concede apenas permissão Execution e permissão Minimal.

NamingContainer

Obtém uma referência ao contêiner de nomenclatura do controle do servidor, que cria um namespace exclusivo para diferenciar entre os controles de servidor com o mesmo valor da propriedade ID.

(Herdado de Control)
Page

Obtém uma referência para a instância Page que contém o controle de servidor.

(Herdado de Control)
Parent

Obtém uma referência ao controle pai do controle de servidor na hierarquia de controle da página.

(Herdado de Control)
Personalization

Obtém uma referência a um objeto que contém os dados de personalização de uma página da Web.

RenderingCompatibility

Obtém um valor que especifica a versão do ASP.NET com a qual o HTML renderizado será compatível.

(Herdado de Control)
SelectedWebPart

Obtém uma referência a um WebPart ou outro controle de servidor que esteja atualmente selecionado para edição ou para criação de uma conexão com outro controle.

Site

Obtém informações sobre o contêiner que hospeda o controle atual quando renderizados em uma superfície de design.

(Herdado de Control)
SkinID

Obtém ou define uma cadeia de caracteres vazia ("") para que nenhuma capa possa ser aplicada ao controle WebPartManager.

StaticConnections

Obtém uma referência para a coleção de todos os objetos WebPartConnection em uma página da Web que são definidos como conexões estáticas.

SupportedDisplayModes

Obtém uma coleção somente leitura de todos os modos de exibição que estão disponíveis em uma página da Web específica.

TemplateControl

Obtém ou define uma referência ao modelo que contém este controle.

(Herdado de Control)
TemplateSourceDirectory

Obtém o diretório virtual do Page ou UserControl que contém o controle do servidor atual.

(Herdado de Control)
UniqueID

Obtém o identificador exclusivo, qualificado segundo a hierarquia, para o controle de servidor.

(Herdado de Control)
ValidateRequestMode

Obtém ou define um valor que indica se o controle verifica a entrada do cliente do navegador para valores potencialmente perigosos.

(Herdado de Control)
ViewState

Obtém um dicionário de informações de estado que permite salvar e restaurar o estado de exibição de um controle de servidor em várias solicitações para a mesma página.

(Herdado de Control)
ViewStateIgnoresCase

Obtém um valor que indica se o objeto StateBag não diferencia maiúsculas de minúsculas.

(Herdado de Control)
ViewStateMode

Obtém ou define o modo de estado de exibição deste controle.

(Herdado de Control)
Visible

Obtém um valor que permite que os controles filho fiquem visíveis.

WebParts

Obtém uma referência a todos os controles WebPart rastreados pelo controle WebPartManager em uma página da Web.

Zones

Obtém uma referência a uma coleção de todas as zonas WebPartZoneBase em uma página da Web.

Métodos

ActivateConnections()

Ativa todas as conexões, em uma página da Web, que estejam inativas no momento.

AddedControl(Control, Int32)

Chamado após um controle filho ser adicionado à coleção Controls do objeto Control.

(Herdado de Control)
AddParsedSubObject(Object)

Notifica o controle de servidor de que um elemento, XML ou HTML, foi analisado e adiciona o elemento ao objeto ControlCollection do controle de servidor.

(Herdado de Control)
AddWebPart(WebPart, WebPartZoneBase, Int32)

Fornece o método programático padrão para adicionar controles WebPart a uma página da Web.

ApplyStyleSheetSkin(Page)

Aplica as propriedades de estilo definidas na folha de estilos da página ao controle.

(Herdado de Control)
BeginRenderTracing(TextWriter, Object)

Inicia o rastreamento de tempo de design de dados de renderização.

(Herdado de Control)
BeginWebPartConnecting(WebPart)

Inicia o processo de conexão de dois controles WebPart.

BeginWebPartEditing(WebPart)

Inicia o processo de edição de um controle WebPart.

BuildProfileTree(String, Boolean)

Reúne informações sobre o controle de servidor e as envia para a propriedade Trace para serem exibidas quando o rastreamento está habilitado para a página.

(Herdado de Control)
CanConnectWebParts(WebPart, ProviderConnectionPoint, WebPart, ConsumerConnectionPoint)

Verifica os controles WebPart que participarão de uma conexão para determinar se eles são capazes de ser conectados, quando os controles de consumidor e provedor têm interfaces compatíveis e um objeto WebPartTransformer não é necessário.

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

Verifica os controles WebPart que participarão de uma conexão para determinar se eles são capazes de conexão e serem conectados e usa um objeto WebPartTransformer para criar a conexão entre um provedor e um consumidor incompatíveis.

CheckRenderClientScript()

Verifica os recursos do navegador que está fazendo a solicitação e o valor da propriedade EnableClientScript para determinar se o script de cliente deve ser renderizado.

ClearCachedClientID()

Define o valor ClientID armazenado em cache como null.

(Herdado de Control)
ClearChildControlState()

Exclui as informações de estado de controle para os controles filho do controle de servidor.

(Herdado de Control)
ClearChildState()

Exclui as informações de estado de exibição e de estado de controle para todos os controles filho do controle de servidor.

(Herdado de Control)
ClearChildViewState()

Exclui as informações de estado de exibição para todos os controles filho do controle de servidor.

(Herdado de Control)
ClearEffectiveClientIDMode()

Define a propriedade ClientIDMode da instância de controle atual e de quaisquer controles filho para Inherit.

(Herdado de Control)
CloseWebPart(WebPart)

Fecha um controle WebPart de forma que ele não seja renderizado em uma página da Web, mas que possa ser reaberto.

ConnectWebParts(WebPart, ProviderConnectionPoint, WebPart, ConsumerConnectionPoint)

Cria uma conexão entre dois controles WebPart ou GenericWebPart usando apenas as referências aos controles e seus objetos ConnectionPoint especificados.

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

Cria uma conexão entre dois controles WebPart ou GenericWebPart usando as referências aos controles, seus objetos ConnectionPoint especificados e um objeto WebPartTransformer.

CopyWebPart(WebPart)

Usado pelo conjunto de controles de Web Parts para criar uma cópia de um WebPart ou controle de servidor com a finalidade de adicionar o controle a uma página da Web.

CreateAvailableTransformers()

Cria um conjunto de transformadores especificado no arquivo de configuração de um site e o adiciona à coleção de transformadores referenciada pela propriedade AvailableTransformers.

CreateChildControls()

Chamado pela estrutura de página do ASP.NET para notificar os controles do servidor que usam a implementação baseada em composição para criar os controles filho para preparar-se para um postback ou renderização.

(Herdado de Control)
CreateControlCollection()

Retorna a coleção de todos os controles que são gerenciados pelo controle WebPartManager em uma página da Web. Essa classe não pode ser herdada.

CreateDisplayModes()

Cria o conjunto de todos os possíveis modos de exibição para um aplicativo de Web Parts.

CreateDynamicConnectionID()

Obtém um valor exclusivo para servir como uma ID para uma conexão dinâmica.

CreateDynamicWebPartID(Type)

Gera uma ID exclusiva para um controle WebPart dinâmico.

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

Cria um controle especial que é inserido em uma página e exibido para usuários finais, quando uma tentativa de carregar ou criar um controle WebPart dinâmico falha por alguma razão.

CreatePersonalization()

Retorna um objeto de personalização para conter os dados de personalização de um usuário para a página da Web atual.

CreateWebPart(Control)

Encapsula um controle de servidor que não seja um controle WebPart com um objeto GenericWebPart, para que o controle possa ter a funcionalidade de Web Parts.

DataBind()

Associa uma fonte de dados ao controle de servidor chamado e a todos os seus controles filho.

(Herdado de Control)
DataBind(Boolean)

Associa uma fonte de dados ao controle de servidor invocado e todos os seus controles filho com uma opção para gerar o evento DataBinding.

(Herdado de Control)
DataBindChildren()

Associa uma fonte de dados aos controles filho do controle do servidor.

(Herdado de Control)
DeleteWebPart(WebPart)

Remove permanentemente uma instância dinâmica de um controle WebPart de uma página da Web.

DisconnectWebPart(WebPart)

Remove um WebPart ou um controle de servidor que está sendo fechado ou excluído das conexões em que está participando.

DisconnectWebParts(WebPartConnection)

Realiza o processo de desconexão de controles de servidor que estão conectados em uma página da Web.

Dispose()

Permite que um controle de servidor execute a limpeza final antes do lançamento da memória.

(Herdado de Control)
EndRenderTracing(TextWriter, Object)

Encerra o rastreamento de tempo de design de dados de renderização.

(Herdado de Control)
EndWebPartConnecting()

Conclui o processo de conexão de um controle WebPart a outro controle.

EndWebPartEditing()

Conclui o processo de edição de um controle WebPart.

EnsureChildControls()

Determinará se o controle de servidor contiver controles filho. Se ele não contiver, ele criará controles filho.

(Herdado de Control)
EnsureID()

Cria um identificador para controles que não têm um identificador atribuído.

(Herdado de Control)
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
ExportWebPart(WebPart, XmlWriter)

Cria um arquivo de descrição de XML que contém dados de estado e de propriedade de um controle de servidor.

FindControl(String)

Procura o atual contêiner de nomenclatura de um controle de servidor com o parâmetro id especificado.

(Herdado de Control)
FindControl(String, Int32)

Procura o contêiner de nomenclatura atual para um controle de servidor com o id especificado e um inteiro especificado no parâmetro pathOffset, que auxilia na pesquisa. Você não deve substituir esta versão do método FindControl.

(Herdado de Control)
Focus()

Substituído para impedir que o foco seja definido no controle WebPartManager, porque ele não tem IU (interface do usuário).

GetConsumerConnectionPoints(WebPart)

Recupera a coleção de objetos ConsumerConnectionPoint que podem atuar como pontos de conexão de um controle de servidor que atua como um consumidor em uma conexão de Web Parts.

GetCurrentWebPartManager(Page)

Recupera uma referência para a instância atual do controle WebPartManager na página.

GetDesignModeState()

Obtém os dados de tempo de design para um controle.

(Herdado de Control)
GetDisplayTitle(WebPart)

Obtém uma cadeia de caracteres que contém o valor para a propriedade DisplayTitle de um controle WebPart.

GetExportUrl(WebPart)

Obtém o caminho virtual relativo e a cadeia de caracteres de consulta que fazem parte da solicitação quando um usuário tenta exportar um controle WebPart.

GetGenericWebPart(Control)

Obtém uma referência à instância do controle GenericWebPart que contém um controle de servidor.

GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetProviderConnectionPoints(WebPart)

Recupera a coleção de objetos ProviderConnectionPoint que podem atuar como pontos de conexão de um controle de servidor que atua como um provedor em uma conexão de Web Parts.

GetRouteUrl(Object)

Obtém a URL que corresponde a um conjunto de parâmetros de rota.

(Herdado de Control)
GetRouteUrl(RouteValueDictionary)

Obtém a URL que corresponde a um conjunto de parâmetros de rota.

(Herdado de Control)
GetRouteUrl(String, Object)

Obtém a URL que corresponde a um conjunto de parâmetros de rota e um nome de rota.

(Herdado de Control)
GetRouteUrl(String, RouteValueDictionary)

Obtém a URL que corresponde a um conjunto de parâmetros de rota e um nome de rota.

(Herdado de Control)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
GetUniqueIDRelativeTo(Control)

Retorna a parte prefixada da propriedade UniqueID do controle especificado.

(Herdado de Control)
HasControls()

Determina se o controle de servidor contém algum controle filho.

(Herdado de Control)
HasEvents()

Retorna um valor que indica se os eventos são registrados para o controle ou qualquer controle filho.

(Herdado de Control)
ImportWebPart(XmlReader, String)

Importa um arquivo de descrição XML que contém dados de estado e de propriedade para um controle WebPart e aplica os dados ao controle.

IsAuthorized(Type, String, String, Boolean)

Realiza as etapas finais para determinar se um controle está autorizado a ser adicionado a uma página.

IsAuthorized(WebPart)

Realiza as etapas iniciais para determinar se um controle está autorizado a ser adicionado a uma página.

IsLiteralContent()

Determina se o controle de servidor contém apenas o conteúdo literal.

(Herdado de Control)
LoadControlState(Object)

Carrega dados de estado do controle que foram salvos de uma solicitação de página anterior e precisam ser restaurados em uma solicitação subsequente.

LoadCustomPersonalizationState(PersonalizationDictionary)

Armazena os dados de personalização customizados que foram passados para o controle WebPartManager pelos objetos de personalização para serem usados durante o processo de inicialização.

LoadViewState(Object)

Restaura informações de estado de exibição de uma solicitação de página anterior salva pelo método SaveViewState().

(Herdado de Control)
MapPathSecure(String)

Recupera o caminho físico para o qual um caminho virtual é mapeado, relativo ou virtual.

(Herdado de Control)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
MoveWebPart(WebPart, WebPartZoneBase, Int32)

Move um WebPart ou um controle de servidor de uma zona WebPartZoneBase para outra ou para uma nova posição dentro da mesma zona.

OnAuthorizeWebPart(WebPartAuthorizationEventArgs)

Aciona o evento AuthorizeWebPart e invoca um manipulador para o evento, se houver.

OnBubbleEvent(Object, EventArgs)

Determina se o evento do controle de servidor é passado um nível acima da hierarquia de controle de servidor da interface do usuário da página.

(Herdado de Control)
OnConnectionsActivated(EventArgs)

Aciona o evento ConnectionsActivated para indicar que uma página e seus controles estão carregados e que as conexões da página foram ativadas para iniciar o compartilhamento de dados.

OnConnectionsActivating(EventArgs)

Aciona o evento ConnectionsActivating para indicar que uma página e seus controles foram carregados e o processo de ativação de conexões pode começar.

OnDataBinding(EventArgs)

Aciona o evento DataBinding.

(Herdado de Control)
OnDisplayModeChanged(WebPartDisplayModeEventArgs)

Aciona o evento DisplayModeChanged para indicar que o controle WebPartManager concluiu o processo de alternar de um modo de exibição para outro em uma página da Web.

OnDisplayModeChanging(WebPartDisplayModeCancelEventArgs)

Aciona o evento DisplayModeChanging para indicar que o controle WebPartManager está no processo de alternar de um modo de exibição para outro em uma página da Web.

OnInit(EventArgs)

Aciona o evento Init, que é o primeiro evento no ciclo de vida do controle WebPartManager.

OnLoad(EventArgs)

Aciona o evento Load.

(Herdado de Control)
OnPreRender(EventArgs)

Aciona o evento PreRender, que ocorre imediatamente antes de um controle WebPartManager ser renderizado em uma página da Web.

OnSelectedWebPartChanged(WebPartEventArgs)

Aciona o evento SelectedWebPartChanged, que ocorre depois que um controle WebPart é recém-selecionado ou que sua seleção é desmarcada.

OnSelectedWebPartChanging(WebPartCancelEventArgs)

Aciona o evento SelectedWebPartChanging, que ocorre durante o processo de alteração de qual controle WebPart está selecionado no momento.

OnUnload(EventArgs)

Aciona o evento Unload base e remove a instância WebPartManager de uma página da Web.

OnWebPartAdded(WebPartEventArgs)

Aciona o evento WebPartAdded, que ocorre depois que um controle WebPart é adicionado a uma página.

OnWebPartAdding(WebPartAddingEventArgs)

Aciona o evento WebPartAdding, que ocorre durante o processo de adição de um controle WebPart (ou um controle de servidor ou de usuário) a uma zona WebPartZoneBase.

OnWebPartClosed(WebPartEventArgs)

Aciona o evento WebPartClosed para sinalizar que um controle foi removido de uma página.

OnWebPartClosing(WebPartCancelEventArgs)

Aciona o evento WebPartClosing, que ocorre durante o processo de remoção de um controle WebPart ou controle de servidor de uma página.

OnWebPartDeleted(WebPartEventArgs)

Aciona o evento WebPartDeleted, que ocorre depois que um controle WebPart é permanentemente excluído de uma página.

OnWebPartDeleting(WebPartCancelEventArgs)

Aciona o evento WebPartDeleting, que indica que um controle WebPart dinâmico (ou controle de usuário ou de servidor que está contido em uma zona WebPartZoneBase) está no processo de ser excluído.

OnWebPartMoved(WebPartEventArgs)

Aciona o evento WebPartMoved, que ocorre depois que um controle WebPart é movido para um local diferente em uma página.

OnWebPartMoving(WebPartMovingEventArgs)

Aciona o evento WebPartMoving, que indica que um WebPart ou controle de usuário ou de servidor, em uma zona WebPartZoneBase, está no processo de ser movido.

OnWebPartsConnected(WebPartConnectionsEventArgs)

Aciona o evento WebPartsConnected que ocorre depois que uma conexão é estabelecida entre controles WebPart.

OnWebPartsConnecting(WebPartConnectionsCancelEventArgs)

Aciona o evento WebPartsConnecting, que ocorre durante o processo de estabelecimento de uma conexão entre dois WebPart ou controles de servidor ou de usuário, contidos em um zona WebPartZoneBase.

OnWebPartsDisconnected(WebPartConnectionsEventArgs)

Aciona o evento WebPartsDisconnected, que ocorre depois que uma conexão entre controles WebPart é finalizada.

OnWebPartsDisconnecting(WebPartConnectionsCancelEventArgs)

Aciona o evento WebPartsDisconnecting, que indica que dois WebPart ou controles de usuário ou de servidor, em uma zona WebPartZoneBase, estão no processo de finalizar uma conexão.

OpenFile(String)

Obtém um Stream usado para ler um arquivo.

(Herdado de Control)
RaiseBubbleEvent(Object, EventArgs)

Atribui quaisquer fontes de evento e suas informações para o pai do controle.

(Herdado de Control)
RegisterClientScript()

Habilita o controle WebPartManager a emitir script do lado do cliente, que é usado para vários recursos de personalização, como arrastar controles WebPart em uma página da Web.

RemovedControl(Control)

Chamado após um controle filho ser removido da coleção Controls do objeto Control.

(Herdado de Control)
Render(HtmlTextWriter)

Substituído para impedir que o controle WebPartManager renderize qualquer conteúdo.

RenderChildren(HtmlTextWriter)

Gera o conteúdo dos filhos de um controle de servidor para um objeto HtmlTextWriter fornecido, que grava o conteúdo a ser renderizado no cliente.

(Herdado de Control)
RenderControl(HtmlTextWriter)

Gera o conteúdo do controle de servidor para um objeto HtmlTextWriter fornecido e armazena informações de rastreamento sobre o controle caso o rastreamento esteja habilitado.

(Herdado de Control)
RenderControl(HtmlTextWriter, ControlAdapter)

Gera o conteúdo do controle de servidor a um objeto HtmlTextWriter fornecido usando um objeto ControlAdapter fornecido.

(Herdado de Control)
ResolveAdapter()

Obtém o adaptador de controle responsável por renderizar o controle especificado.

(Herdado de Control)
ResolveClientUrl(String)

Obtém uma URL que pode ser usada pelo navegador.

(Herdado de Control)
ResolveUrl(String)

Converte uma URL em uma que possa ser usada no cliente solicitante.

(Herdado de Control)
SaveControlState()

Salva dados de estado do controle WebPartManager para que os dados possam ser restaurados nas solicitações futuras à página da Web que contém o controle.

SaveCustomPersonalizationState(PersonalizationDictionary)

Salva dados de estado de personalização customizados mantidos pelo controle WebPartManager, para que esses dados possam ser recarregados sempre que a página for recarregada.

SaveViewState()

Salva alterações de estado de exibição do controle de servidor que ocorreram desde a hora em que ocorreu o postback da página no servidor.

(Herdado de Control)
SetDesignModeState(IDictionary)

Define os dados de tempo de design para um controle.

(Herdado de Control)
SetPersonalizationDirty()

Define um sinalizador que indica que os dados de personalização customizados para o controle WebPartManager foram alterados.

SetRenderMethodDelegate(RenderMethod)

Atribui um delegado do manipulador de eventos para renderizar o controle de servidor e seu conteúdo em seu controle pai.

(Herdado de Control)
SetSelectedWebPart(WebPart)

Define o valor da propriedade SelectedWebPart igual ao WebPart selecionado no momento ou ao controle de servidor.

SetTraceData(Object, Object)

Define os dados de rastreamento para o rastreamento de tempo de design dos dados de renderização, usando a chave e o valor de dados de rastreamento.

(Herdado de Control)
SetTraceData(Object, Object, Object)

Define os dados de rastreamento para o rastreamento de tempo de design dos dados de renderização, usando o objeto rastreado, a chave e o valor de dados de rastreamento.

(Herdado de Control)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
TrackViewState()

Aplica dados de estado de personalização ao controle WebPartManager e chama o método base para habilitar o controle de alterações nos dados de estado de exibição para o controle.

Eventos

AuthorizeWebPart

Ocorre quando o método IsAuthorized é chamado para determinar se um WebPart ou um controle de servidor pode ser adicionado a uma página.

ConnectionsActivated

Ocorre depois que todas as conexões de Web Parts atuais em uma página não estejam apenas conectadas, mas já tenham começado a compartilhar ativamente dados entre os controles de consumidor e provedor envolvidos em cada conexão.

ConnectionsActivating

Ocorre durante o processo de ativação de todas as conexões de Web Parts estabelecidas em uma página da Web.

DataBinding

Ocorre quando o controle de servidor é associado a uma fonte de dados.

(Herdado de Control)
DisplayModeChanged

Ocorre depois que o modo de exibição atual, em uma página de Web Parts, foi alterado.

DisplayModeChanging

Ocorre depois que um usuário clica em um verbo em uma página da Web que inicia o processo de alteração para um modo de exibição diferente.

Disposed

Ocorre quando um controle de servidor é liberado da memória, que é o último estágio do ciclo de vida de controle de servidor quando uma página ASP.NET é solicitada.

(Herdado de Control)
Init

Ocorre quando o controle de servidor é inicializado, que é a primeira etapa do ciclo de vida.

(Herdado de Control)
Load

Ocorre quando o controle de servidor é carregado no objeto Page.

(Herdado de Control)
PreRender

Ocorre depois que o objeto Control é carregado, mas antes da renderização.

(Herdado de Control)
SelectedWebPartChanged

Ocorre depois que a seleção de um controle WebPart foi alterada e movida para outro controle em uma página da Web.

SelectedWebPartChanging

Ocorre durante o processo de alteração de qual WebPart ou qual controle de servidor está atualmente selecionado em uma página da Web.

Unload

Ocorre quando o controle de servidor é descarregado da memória.

(Herdado de Control)
WebPartAdded

Ocorre depois que um WebPart dinâmico ou outro controle de servidor foi adicionado a uma zona WebPartZoneBase, para indicar que o controle foi adicionado com êxito.

WebPartAdding

Ocorre durante o processo de adição de um WebPart dinâmico ou outro controle de servidor a uma zona WebPartZoneBase.

WebPartClosed

Ocorre quando um controle WebPart (ou controle de servidor ou de usuário) é removido de uma página.

WebPartClosing

Ocorre durante o processo de remoção de um controle WebPart (ou controle de servidor ou de usuário) de uma página.

WebPartDeleted

Ocorre depois que um WebPart ou outro controle de servidor foi excluído de uma zona WebPartZoneBase.

WebPartDeleting

Ocorre durante o processo de exclusão permanente de uma instância de um WebPart dinâmico ou outro controle de servidor de uma zona WebPartZoneBase.

WebPartMoved

Ocorre depois que um WebPart ou controle de servidor é movido para um local diferente em uma página da Web.

WebPartMoving

Ocorre durante o processo de movimentação de um WebPart ou outro controle de servidor que está contido em uma zona WebPartZoneBase.

WebPartsConnected

Ocorre depois que uma conexão específica é estabelecida entre controles WebPart (ou controles de servidor ou de usuário).

WebPartsConnecting

Ocorre durante o processo de criação de uma conexão entre controles WebPart (ou controles de servidor ou de usuário, colocados em uma zona WebPartZoneBase).

WebPartsDisconnected

Ocorre depois que uma conexão entre dois WebPart ou controles de servidor foi encerrada.

WebPartsDisconnecting

Ocorre durante o processo de encerramento da conexão entre WebPart ou controles de servidor anteriormente conectados.

Implantações explícitas de interface

IControlBuilderAccessor.ControlBuilder

Para obter uma descrição desse membro, confira ControlBuilder.

(Herdado de Control)
IControlDesignerAccessor.GetDesignModeState()

Para obter uma descrição desse membro, confira GetDesignModeState().

(Herdado de Control)
IControlDesignerAccessor.SetDesignModeState(IDictionary)

Para obter uma descrição desse membro, confira SetDesignModeState(IDictionary).

(Herdado de Control)
IControlDesignerAccessor.SetOwnerControl(Control)

Para obter uma descrição desse membro, confira SetOwnerControl(Control).

(Herdado de Control)
IControlDesignerAccessor.UserData

Para obter uma descrição desse membro, confira UserData.

(Herdado de Control)
IDataBindingsAccessor.DataBindings

Para obter uma descrição desse membro, confira DataBindings.

(Herdado de Control)
IDataBindingsAccessor.HasDataBindings

Para obter uma descrição desse membro, confira HasDataBindings.

(Herdado de Control)
IExpressionsAccessor.Expressions

Para obter uma descrição desse membro, confira Expressions.

(Herdado de Control)
IExpressionsAccessor.HasExpressions

Para obter uma descrição desse membro, confira HasExpressions.

(Herdado de Control)
IParserAccessor.AddParsedSubObject(Object)

Para obter uma descrição desse membro, confira AddParsedSubObject(Object).

(Herdado de Control)
IPersonalizable.IsDirty

Obtém um valor que indica se os dados de estado de personalização customizados, gerenciados pelo controle WebPartManager, foram alterados em uma página da Web.

IPersonalizable.Load(PersonalizationDictionary)

Retorna dados de estado de personalização customizados salvos anteriormente e que precisam ser carregados no controle WebPartManager.

IPersonalizable.Save(PersonalizationDictionary)

Salva os dados de estado de personalização customizados que são gerenciados pelo controle WebPartManager.

Métodos de Extensão

FindDataSourceControl(Control)

Retorna a fonte de dados associada ao controle de dados do controle especificado.

FindFieldTemplate(Control, String)

Retorna o modelo do campo para a coluna especificada no contêiner de nomenclatura do controle especificado.

FindMetaTable(Control)

Retorna o objeto metatable para o controle que contém dados.

GetDefaultValues(INamingContainer)

Obtém a coleção de valores padrão para o controle de dados especificado.

GetMetaTable(INamingContainer)

Obtém os metadados de tabela para o controle de dados especificado.

SetMetaTable(INamingContainer, MetaTable)

Define os metadados de tabela para o controle de dados especificado.

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

Define os metadados de tabela e o mapeamento de valores padrão para o controle de dados especificado.

SetMetaTable(INamingContainer, MetaTable, Object)

Define os metadados de tabela e o mapeamento de valores padrão para o controle de dados especificado.

TryGetMetaTable(INamingContainer, MetaTable)

Determina se os metadados da tabela estão disponíveis.

EnableDynamicData(INamingContainer, Type)

Habilita o comportamento de Dados Dinâmicos para o controle de dados especificado.

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

Habilita o comportamento de Dados Dinâmicos para o controle de dados especificado.

EnableDynamicData(INamingContainer, Type, Object)

Habilita o comportamento de Dados Dinâmicos para o controle de dados especificado.

Aplica-se a

Confira também