Condividi tramite


WebPartManager Classe

Definizione

Funge da classe centrale dell'insieme di controlli web part per la gestione di tutti i controlli web part, le funzionalità e gli eventi che si verificano in una pagina 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
Ereditarietà
WebPartManager
Attributi
Implementazioni

Esempio

Nell'esempio di codice seguente viene illustrato l'uso dichiarativo e programmatico del WebPartManager controllo .

L'esempio di codice ha quattro parti:

  • Controllo utente che consente di modificare le modalità di visualizzazione in una pagina web part.

  • Pagina Web che contiene due controlli personalizzati WebPart che possono essere connessi e un <asp:webpartmanager> elemento.

  • File di codice sorgente che contiene due controlli personalizzati WebPart e un'interfaccia personalizzata.

  • Spiegazione del funzionamento dell'esempio in un browser.

Il controllo utente dispone di un controllo elenco a discesa che mostra le possibili modalità di visualizzazione in una pagina, in base ai controlli Web part presenti nella pagina. Nella pagina Web per questo esempio di codice, questo controllo utente viene dichiarato appena sotto l'elemento WebPartManager nel markup della pagina ed è presente una Register direttiva nella parte superiore della pagina Web per registrare il controllo. Per informazioni dettagliate sulle modalità di visualizzazione e una descrizione del codice sorgente in questo controllo, vedere Procedura dettagliata: Modifica delle modalità di visualizzazione in una pagina Web part.

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

Il markup dichiarativo per la pagina Web contiene Register direttive sia per il controllo utente che per i controlli personalizzati. È presente un <asp:webpartmanager> elemento , un <asp:webpartzone> elemento che contiene i controlli personalizzati e un <asp:connectionszone> elemento . La pagina contiene anche codice inline che gestisce gli eventi correlati alla connessione per il WebPartManager controllo. È possibile visualizzare l'effetto di questo codice durante la connessione e la disconnessione dei controlli.

<%@ 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 terza parte dell'esempio è il codice sorgente per i controlli. Si noti che è presente un'interfaccia denominata IZipCodee questa interfaccia viene implementata nella ZipCodeWebPart classe . Questa classe ha un metodo di callback speciale denominato ProvideIZipCode che funge da provider. L'altro tipo, denominato WeatherWebPart, viene implementato anche con un metodo speciale denominato GetIZipCode, che consente al controllo di fungere da consumer dell'altro controllo.

Per eseguire l'esempio di codice, è necessario compilare questo codice sorgente. È possibile compilarlo in modo esplicito e inserire l'assembly risultante nella cartella Bin del sito Web o nella Global Assembly Cache. In alternativa, è possibile inserire il codice sorgente nella cartella App_Code del sito, in cui verrà compilato in modo dinamico in fase di esecuzione. In questo esempio di codice si presuppone che l'origine sia stata compilata in un assembly e che la Register direttiva nella pagina Web faccia riferimento al nome dell'assembly. Per una procedura dettagliata che illustra come eseguire la compilazione, vedere Procedura dettagliata: sviluppo e uso di un controllo server Web personalizzato.

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

Dopo aver caricato la pagina Web in un browser, fare clic sul controllo elenco a discesa Modalità di visualizzazione e selezionare Connetti per passare alla modalità di connessione. La modalità di connessione usa l'elemento <asp:connectionszone> per consentire di creare connessioni tra i controlli. In modalità di connessione fare clic sulla freccia rivolta verso il basso nella barra del titolo del controllo CAP per attivare il menu dei verbi e quindi fare clic su Connetti. Dopo aver visualizzato l'interfaccia utente della connessione, fare clic sul collegamento Crea una connessione a un consumer . Viene visualizzata una cella con un controllo elenco a discesa. Selezionare Controllo meteo nell'elenco a discesa e quindi fare clic su Connetti per completare la connessione dei due controlli. Fare clic su Chiudi e quindi utilizzare l'elenco a discesa Modalità di visualizzazione per restituire la pagina alla normale modalità di esplorazione. È possibile immettere un CAP e il controllo consumer verrà aggiornato con il valore immesso. Poiché la ZipCode proprietà è stata contrassegnata con l'attributo Personalizable nel codice sorgente, questo valore della proprietà verrà mantenuto tra le sessioni del browser, salvando così il valore immesso da un utente. Un controllo consumer più sofisticato potrebbe accettare le informazioni sul codice postale, cercare le informazioni meteo in base al codice e visualizzarlo a un utente.

Commenti

Il WebPartManager controllo funge da hub o centro di controllo di un'applicazione Web part. In ogni pagina deve essere presente un'istanza di un soloWebPartManager controllo che usa controlli Web part. Come per la maggior parte degli aspetti delle applicazioni Web part, il WebPartManager controllo funziona solo con gli utenti autenticati. Inoltre, la funzionalità funziona quasi interamente con i controlli server che risiedono all'interno di aree Web part che ereditano dalla WebZone classe . I controlli server che si trovano in una pagina all'esterno di queste zone possono avere pochissime funzionalità web part o interazione con il WebPartManager controllo.

Come hub per la funzionalità web part in una pagina, il WebPartManager controllo esegue i tipi di attività descritte nella tabella seguente.

Categoria attività Operazioni del controllo
Controlli Web part di rilevamento Tiene traccia dei diversi tipi di controlli in una pagina che forniscono funzionalità web part, inclusi WebPart controlli, connessioni, zone e altri.
Aggiunta e rimozione di controlli Web part Fornisce i metodi per l'aggiunta, l'eliminazione e la chiusura WebPart di controlli in una pagina.
Amministrazione delle connessioni Crea connessioni tra controlli e monitora le connessioni, nonché i processi di aggiunta e rimozione.
Personalizzazione di controlli e pagine Consente agli utenti di spostare i controlli in posizioni diverse in una pagina e di avviare le visualizzazioni in cui gli utenti possono modificare l'aspetto, le proprietà e il comportamento dei controlli. Gestisce le impostazioni di personalizzazione specifiche dell'utente in ogni pagina.
Interruttore tra visualizzazioni di pagina diverse Passa una pagina tra visualizzazioni specializzate diverse della pagina, in modo che gli utenti possano eseguire determinate attività, ad esempio la modifica del layout di pagina o i controlli di modifica.
Generazione di eventi del ciclo di vita delle web part Definisce, genera e consente agli sviluppatori di gestire gli eventi del ciclo di vita dei controlli web part, ad esempio quando vengono aggiunti controlli, spostati, connessi o eliminati.
Abilitazione dell'importazione e dell'esportazione dei controlli Esporta flussi XML che contengono lo stato delle proprietà dei controlli e consente agli utenti di importare i file per praticità nella personalizzazione di WebPart controlli complessi in altre pagine o siti.

La WebPartManager classe ha un set elevato di proprietà. Coerente con il WebPartManager ruolo di rilevamento di altri controlli, ha una serie di proprietà che fanno riferimento a raccolte di controlli Web part o altri oggetti Web part speciali. Le AvailableTransformersproprietà , ControlsSupportedDisplayModesConnectionsDynamicConnectionsWebPartsDisplayModese Zones sono tutte raccolte usate dal controllo per il WebPartManager rilevamento e altre attività di gestione.

Un altro gruppo di proprietà contiene avvisi personalizzabili che si applicano in determinati scenari che si verificano in un'applicazione Web part. Questi includono le CloseProviderWarningproprietà , DeleteWarninge .ExportSensitiveDataWarning

La classe esegue l'override WebPartManager di alcune delle proprietà ereditate dalla base, usate da molti controlli server Web. Queste includono le EnableThemingproprietà , SkinIDe Visible .

Infine, esiste un gruppo di proprietà utili per accedere allo stato corrente dell'applicazione. La DisplayMode proprietà indica la modalità di visualizzazione corrente in cui si trova una pagina. La EnableClientScript proprietà indica se un controllo è autorizzato a eseguire il rendering dello script lato client, che è rilevante in situazioni in cui gli utenti potrebbero avere browser con funzionalità diverse o avere disattivato lo scripting. La Internals proprietà è utile per fare riferimento a una classe di utilità che contiene le chiamate a diversi metodi importanti di Web part usati per i casi di estendibilità. Nascondendo le chiamate a questi metodi in una classe separata (la WebPartManagerInternals classe), l'API WebPartManager della classe è semplificata. La Personalization proprietà fornisce l'accesso agli oggetti di personalizzazione che archivia le impostazioni di personalizzazione degli utenti e mantiene i dati per l'archiviazione permanente. La SelectedWebPart proprietà indica quale WebPart controllo in una pagina è attualmente selezionato dall'utente o dall'applicazione. La IPersonalizable.IsDirty proprietà indica se i dati di personalizzazione personalizzati in un WebPart controllo sono stati modificati.

Il WebPartManager controllo contiene cinque modalità di visualizzazione predefinite o visualizzazioni di una pagina Web. Gli sviluppatori possono estendere questa funzionalità, creando modalità di visualizzazione personalizzate estendendo tipi come la classe o la WebZoneToolZone classe. Gli utenti possono passare una pagina nelle varie modalità di visualizzazione, a condizione che il tipo appropriato di controlli che corrispondono a una determinata modalità di visualizzazione siano presenti in una pagina.

Nota

È possibile estendere questa funzionalità in modo che gli utenti possano passare a una modalità di visualizzazione personalizzata senza avere una zona corrispondente nella pagina. Tuttavia, il comportamento predefinito è che le modalità di visualizzazione corrispondono alle zone.

Le modalità di visualizzazione standard sono rappresentate dai campi pubblici nella WebPartManager classe. La tabella seguente riepiloga i campi e le modalità di visualizzazione a cui fanno riferimento. La modalità di visualizzazione corrente di una pagina, come indicato sopra, viene sempre fatto riferimento nella DisplayMode proprietà e il set di modalità di visualizzazione possibili in una determinata pagina, dato il tipo di zone presenti nella pagina, è contenuto nella SupportedDisplayModes proprietà.

Campo Dettagli della modalità di visualizzazione
BrowseDisplayMode Visualizzazione utente normale di una pagina Web; la modalità di visualizzazione predefinita e più comune.
DesignDisplayMode Visualizzazione in cui gli utenti possono riorganizzare o eliminare i controlli per modificare il layout della pagina.
EditDisplayMode Visualizzazione in cui un'interfaccia utente di modifica diventa visibile; gli utenti possono modificare l'aspetto, le proprietà e il comportamento dei controlli visibili nella normale modalità di esplorazione.
CatalogDisplayMode Visualizzazione in cui un'interfaccia utente del catalogo diventa visibile; gli utenti possono aggiungere controlli a una pagina dai cataloghi dei controlli disponibili.
ConnectDisplayMode Visualizzazione in cui un'interfaccia utente di connessione diventa visibile; gli utenti possono connettersi, gestire o disconnettere le connessioni tra i controlli.

Il WebPartManager controllo contiene anche un numero di eventi critici nel ciclo di vita delle pagine e dei controlli web part. Questi eventi forniscono un controllo programmatico preciso sul comportamento dei controlli Web part. La maggior parte dei metodi riguarda direttamente i WebPart controlli (o altri controlli server o utente posizionati in WebPartZoneBase zone in modo che possano comportarsi come WebPart controlli). Tuttavia, alcuni eventi riguardano lo stato della pagina o delle connessioni nella pagina. La tabella seguente elenca gli eventi disponibili e riepiloga i propri scopi.

Nota

In tutti i casi nella tabella seguente, la parola "control" fa riferimento a un WebPart controllo o a qualsiasi controllo server che risiede in un fuso e viene eseguito il wrapping con un GenericWebPart oggetto in fase di esecuzione.

Event Descrizione
AuthorizeWebPart Si verifica appena prima che un controllo venga aggiunto a una pagina per verificare che sia autorizzato.
ConnectionsActivated Si verifica dopo l'attivazione di tutte le connessioni in una pagina.
ConnectionsActivating Si verifica appena prima del processo di attivazione di tutte le connessioni in una pagina.
DisplayModeChanged Si verifica dopo la modifica della modalità di visualizzazione corrente di una pagina.
DisplayModeChanging Si verifica appena prima del processo di modifica della modalità di visualizzazione di una pagina.
SelectedWebPartChanged Si verifica dopo l'annullamento della selezione di un controllo.
SelectedWebPartChanging Si verifica appena prima del processo di annullamento della selezione di un controllo.
WebPartAdded Si verifica dopo l'aggiunta di un controllo a una zona.
WebPartAdding Si verifica appena prima del processo di aggiunta di un controllo a una zona.
WebPartClosed Si verifica dopo che un controllo è stato chiuso (rimosso da una pagina).
WebPartClosing Si verifica appena prima del processo di chiusura di un controllo.
WebPartDeleted Si verifica dopo l'eliminazione definitiva di un'istanza di un controllo dinamico (una creata a livello di codice o aggiunta da un catalogo).
WebPartDeleting Si verifica appena prima del processo di eliminazione di un controllo dinamico.
WebPartMoved Si verifica dopo che un controllo è stato spostato all'interno della zona o in un'altra zona.
WebPartMoving Si verifica appena prima del processo di spostamento di un controllo.
WebPartsConnected Si verifica dopo che due controlli selezionati per la partecipazione a una connessione hanno stabilito la connessione.
WebPartsConnecting Si verifica appena prima del processo di connessione di due controlli.
WebPartsDisconnected Si verifica dopo la disconnessione di due controlli connessi.
WebPartsDisconnecting Si verifica appena prima del processo di disconnessione di due controlli.

Il WebPartManager controllo include numerosi metodi per la gestione delle pagine web part. Un set elevato di metodi, non elencati qui, sono metodi i cui nomi prendono il formato OnEventName. Questi metodi generano in genere l'evento associato e forniscono all'evento un gestore di tipo WebPartEventHandler. La maggior parte di questi metodi può essere sostituita dagli sviluppatori che ereditano dalla WebPartManager classe. Inoltre, gli sviluppatori di pagine possono fornire gestori personalizzati per gli eventi associati a questi metodi. Ad esempio, nel caso dell'evento WebPartAdded , uno sviluppatore di pagine potrebbe aggiungere un OnWebPartAdded attributo all'elemento nel markup di una pagina Web e quindi assegnare un nome di metodo personalizzato all'attributo <asp:webpartmanager> per fornire la gestione personalizzata per l'evento. L'attributo OnWebPartAdded corrisponde al metodo e questo modello di base di gestione degli eventi funziona per la maggior parte degli eventi web part e i relativi metodi associati.

Inoltre, il WebPartManager controllo include metodi specifici per l'attività di gestione WebPart dei controlli (e dei controlli server o utente usati come WebPart controlli). Questi metodi includono AddWebPart, CloseWebPartCopyWebPartDisconnectWebPartDeleteWebPartBeginWebPartEditingEndWebPartEditingCreateWebPartAuthorizeWebPartGetGenericWebPartImportWebPartExportWebPartIsAuthorizede .MoveWebPart

Un altro set di metodi è specializzato per le connessioni. Sono inclusi metodi come ActivateConnections, CanConnectWebPartsCreateAvailableTransformersConnectWebPartsBeginWebPartConnectingDisconnectWebPartsEndWebPartConnectingDisconnectWebPartGetConsumerConnectionPointse .GetProviderConnectionPoints

Infine, alcuni WebPartManager metodi si concentrano sulla funzionalità di personalizzazione. Sono incluse CreatePersonalization, LoadControlState, SaveCustomPersonalizationState, SetPersonalizationDirty, IPersonalizable.Load, IPersonalizable.Save e SaveControlState.

Per altre informazioni su altri WebPartManager metodi accessibili tramite la Internals proprietà, vedere la documentazione per la WebPartManagerInternals classe.

Note per gli eredi

Il WebPartManager controllo è progettato per essere esteso. Poiché è così centrale per le applicazioni Web part, quando si desidera estendere un tipo o un controllo specifico nel set di controlli Web part, in molti casi è necessario estendere anche la WebPartManager classe, perché è probabile che sia necessario disporre di una proprietà o di un metodo necessario per rendere il tipo personalizzato funzionare nel contesto di un'applicazione Web part. La documentazione di riferimento delle Web part (vedere System.Web.UI.WebControls.WebParts), quando si discute di come estendere un tipo web part, indica spesso cosa è necessario eseguire per estendere anche la WebPartManager classe o illustra come estenderlo in un esempio di codice.

Costruttori

WebPartManager()

Inizializza una nuova istanza della classe WebPartManager.

Campi

BrowseDisplayMode

Rappresenta la modalità di visualizzazione predefinita per le pagine che contengono controlli Web part. Questo campo è di sola lettura.

CatalogDisplayMode

Rappresenta la modalità di visualizzazione utilizzata per aggiungere a una pagina Web controlli server da un catalogo di controlli. Questo campo è di sola lettura.

ConnectDisplayMode

Rappresenta la modalità di visualizzazione utilizzata per visualizzare una speciale interfaccia utente che consenta agli utenti di gestire le connessioni tra controlli WebPart. Questo campo è di sola lettura.

DesignDisplayMode

Rappresenta la modalità di visualizzazione utilizzata per modificare il layout delle pagine Web che contengono controlli Web part. Questo campo è di sola lettura.

EditDisplayMode

Rappresenta la modalità di visualizzazione in cui gli utenti finali possono modificare i controlli server. Questo campo è di sola lettura.

Proprietà

Adapter

Ottiene l'adattatore specifico del browser per il controllo.

(Ereditato da Control)
AppRelativeTemplateSourceDirectory

Ottiene o imposta la directory virtuale relativa all'applicazione dell'oggetto Page o UserControl contenente questo controllo.

(Ereditato da Control)
AvailableTransformers

Ottiene un insieme di oggetti WebPartTransformer disponibili per l'utilizzo nella creazione di connessioni Web part tra controlli server.

BindingContainer

Ottiene il controllo contenente l'associazione dati del controllo corrente.

(Ereditato da Control)
ChildControlsCreated

Ottiene un valore che indica se i controlli figli del controllo server sono stati creati.

(Ereditato da Control)
ClientID

Ottiene l'ID di controllo per il markup HTML generato da ASP.NET.

(Ereditato da Control)
ClientIDMode

Ottiene o imposta l'algoritmo utilizzato per generare il valore della proprietà ClientID.

(Ereditato da Control)
ClientIDSeparator

Ottiene un carattere che rappresenta il separatore utilizzato nella proprietà ClientID.

(Ereditato da Control)
CloseProviderWarning

Ottiene o imposta un avviso che viene visualizzato quando un utente chiude un controllo che funge da provider per altri controlli in una connessione.

Connections

Ottiene un riferimento all'insieme di tutte le connessioni correnti in una pagina Web.

Context

Ottiene l'oggetto HttpContext associato al controllo server per la richiesta Web corrente.

(Ereditato da Control)
Controls

Ottiene l'insieme di tutti i controlli WebPart, server o utente contenuti nelle aree WebPartZoneBase di una pagina Web e gestiti dal controllo WebPartManager.

DataItemContainer

Ottiene un riferimento al contenitore di denominazione se il contenitore di denominazione implementa IDataItemContainer.

(Ereditato da Control)
DataKeysContainer

Ottiene un riferimento al contenitore di denominazione se il contenitore di denominazione implementa IDataKeysControl.

(Ereditato da Control)
DeleteWarning

Ottiene o imposta un messaggio di avviso personalizzato visualizzato dagli utenti finali quando eliminano un controllo.

DesignMode

Ottiene un valore che indica se un controllo viene utilizzato in un'area di progettazione.

(Ereditato da Control)
DisplayMode

Ottiene o imposta la modalità di visualizzazione attiva per una pagina Web che contiene controlli Web part.

DisplayModes

Ottiene un insieme in sola lettura di tutte le modalità di visualizzazione associate a un controllo WebPartManager.

DynamicConnections

Ottiene l'insieme di tutte le connessioni dinamiche attualmente presenti in una pagina Web.

EnableClientScript

Ottiene o imposta un valore che determina se lo script lato client è abilitato nella pagina Web che contiene un controllo WebPartManager.

EnableTheming

Ottiene un valore che indica l'abilitazione dell'utilizzo dei temi in una pagina Web.

EnableViewState

Ottiene o imposta un valore che indica se lo stato di visualizzazione del controllo server deve essere persistente e lo stato di visualizzazione dei controlli figlio contenuti, per il client richiedente.

(Ereditato da Control)
Events

Ottiene un elenco dei delegati del gestore eventi per il controllo. Questa proprietà è di sola lettura.

(Ereditato da Control)
ExportSensitiveDataWarning

Ottiene o imposta il testo di un messaggio di avviso che viene visualizzato quando l'utente tenta di esportare dati di stato sensibili da un controllo WebPart.

HasChildViewState

Ottiene un valore che indica se per i controlli figlio del controllo server corrente esistono impostazioni dello stato di visualizzazione salvate.

(Ereditato da Control)
ID

Ottiene o imposta l'identificatore a livello di codice assegnato al controllo server.

(Ereditato da Control)
IdSeparator

Ottiene il carattere utilizzato per separare gli identificatori di controllo.

(Ereditato da Control)
Internals

Ottiene un riferimento alla classe WebPartManagerInternals, utilizzata per combinare e separare un insieme di metodi la cui implementazione vera e propria avviene nella classe WebPartManager, ma sono soprattutto utili per gli sviluppatori dei controlli.

IsChildControlStateCleared

Ottiene un valore che indica se i controlli contenuti in questo controllo dispongono di informazioni sullo stato del controllo.

(Ereditato da Control)
IsCustomPersonalizationStateDirty

Ottiene un valore che indica se sono state apportate modifiche alla personalizzazione che hanno effetto sui dettagli di personalizzazione a livello di pagina gestiti dal controllo WebPartManager.

IsTrackingViewState

Ottiene un valore che indica se il controllo server salva le modifiche allo stato di visualizzazione.

(Ereditato da Control)
IsViewStateEnabled

Ottiene un valore che indica se lo stato di visualizzazione è attivato per il controllo corrente.

(Ereditato da Control)
LoadViewStateByID

Ottiene un valore che indica se il controllo prende parte al caricamento del proprio stato di visualizzazione tramite ID anziché tramite l'indice.

(Ereditato da Control)
MediumPermissionSet

Ottiene un oggetto PermissionSet che concede solo l'autorizzazione Execution e l'autorizzazione Medium.

MinimalPermissionSet

Ottiene un oggetto PermissionSet che concede solo l'autorizzazione Execution e l'autorizzazione Minimal.

NamingContainer

Ottiene un riferimento al contenitore dei nomi del controllo server, che crea uno spazio dei nomi univoco per distinguere i controlli server che hanno lo stesso valore della proprietà ID.

(Ereditato da Control)
Page

Ottiene un riferimento all'istanza Page che contiene il controllo server.

(Ereditato da Control)
Parent

Ottiene un riferimento al controllo padre del controllo server nella gerarchia dei controlli della pagina.

(Ereditato da Control)
Personalization

Ottiene un riferimento a un oggetto che contiene dati di personalizzazione per una pagina Web.

RenderingCompatibility

Ottiene un valore che specifica la versione di ASP.NET con cui sarà compatibile il codice HTML di cui è stato eseguito il rendering.

(Ereditato da Control)
SelectedWebPart

Ottiene un riferimento a WebPart o a un altro controllo server correntemente selezionato per la modifica o la creazione di una connessione a un altro controllo.

Site

Ottiene informazioni sul contenitore del controllo corrente quando viene eseguito il rendering in un'area di progettazione.

(Ereditato da Control)
SkinID

Ottiene o imposta una stringa vuota ("") per evitare l'applicazione di interfacce al controllo WebPartManager.

StaticConnections

Ottiene un riferimento all'insieme di tutti gli oggetti WebPartConnection in una pagina Web definiti come connessioni statiche.

SupportedDisplayModes

Ottiene un insieme in sola lettura di tutte le modalità di visualizzazione disponibili in una particolare pagina Web.

TemplateControl

Ottiene o imposta un riferimento al modello che contiene il controllo.

(Ereditato da Control)
TemplateSourceDirectory

Ottiene la directory virtuale dell'oggetto Page o dell'oggetto UserControl che contiene il controllo server corrente.

(Ereditato da Control)
UniqueID

Ottiene l'identificatore univoco qualificato gerarchicamente per il controllo server.

(Ereditato da Control)
ValidateRequestMode

Ottiene o imposta un valore che indica se il controllo verifica la presenza di valori potenzialmente pericolosi nell'input proveniente dal browser.

(Ereditato da Control)
ViewState

Ottiene un dizionario di informazioni sullo stato che permette di salvare e ripristinare lo stato di visualizzazione di un controllo server attraverso più richieste per la stessa pagina.

(Ereditato da Control)
ViewStateIgnoresCase

Ottiene un valore che indica se l'oggetto StateBag non effettua la distinzione tra maiuscole e minuscole.

(Ereditato da Control)
ViewStateMode

Ottiene o imposta la modalità dello stato, visualizzazione di questo controllo.

(Ereditato da Control)
Visible

Ottiene un valore che consente la visualizzazione dei controlli figlio.

WebParts

Ottiene un riferimento a tutti i controlli WebPart registrati dal controllo WebPartManager in una pagina Web.

Zones

Ottiene un riferimento a un insieme di tutte le aree WebPartZoneBase in una pagina Web.

Metodi

ActivateConnections()

Rende attive tutte le connessioni attualmente inattive in una pagina Web.

AddedControl(Control, Int32)

Chiamato dopo che un controllo figlio viene aggiunto alla raccolta Controls dell'oggetto Control.

(Ereditato da Control)
AddParsedSubObject(Object)

Notifica al controllo server che un elemento, XML o HTML, è stato analizzato e aggiunge l'elemento all'oggetto ControlCollection del controllo server.

(Ereditato da Control)
AddWebPart(WebPart, WebPartZoneBase, Int32)

Fornisce il metodo standard a livello di codice per aggiungere controlli WebPart a una pagina Web.

ApplyStyleSheetSkin(Page)

Applica al controllo le proprietà di stile definite nel foglio di stile della pagina.

(Ereditato da Control)
BeginRenderTracing(TextWriter, Object)

Inizia la traccia in fase di progettazione dei dati di rendering.

(Ereditato da Control)
BeginWebPartConnecting(WebPart)

Avvia il processo di connessione di due controlli WebPart.

BeginWebPartEditing(WebPart)

Avvia il processo di modifica di un controllo WebPart.

BuildProfileTree(String, Boolean)

Raccoglie informazioni sul controllo server e le recapita alla proprietà Trace in modo che vengano visualizzate quando è attivata la tracciatura per la pagina.

(Ereditato da Control)
CanConnectWebParts(WebPart, ProviderConnectionPoint, WebPart, ConsumerConnectionPoint)

Verifica i controlli WebPart che prenderanno parte a una connessione per determinare se possono essere connessi, quando i controlli consumer e provider dispongono di interfacce compatibili e non è necessario un oggetto WebPartTransformer.

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

Verifica i controlli WebPart che prenderanno parte a una connessione per determinare se è possibile connetterli e utilizza un oggetto WebPartTransformer per creare la connessione tra un consumer incompatibile e un provider.

CheckRenderClientScript()

Verifica le funzionalità del browser che esegue la richiesta e il valore della proprietà EnableClientScript per determinare se eseguire il rendering dello script client.

ClearCachedClientID()

Imposta il valore memorizzato nella cache ClientID su null.

(Ereditato da Control)
ClearChildControlState()

Elimina le informazioni sullo stato del controllo per i controlli figlio del controllo server.

(Ereditato da Control)
ClearChildState()

Elimina le informazioni sullo stato di visualizzazione e sullo stato del controllo per tutti i controlli figlio del controllo server.

(Ereditato da Control)
ClearChildViewState()

Elimina le informazioni sullo stato di visualizzazione per tutti i controlli figlio del controllo server.

(Ereditato da Control)
ClearEffectiveClientIDMode()

Imposta la proprietà ClientIDMode dell'istanza del controllo corrente e di tutti i controlli figlio su Inherit.

(Ereditato da Control)
CloseWebPart(WebPart)

Chiude un controllo WebPart in maniera tale che non ne viene eseguito il rendering in una pagina Web, ma che sia possibile riaprirlo.

ConnectWebParts(WebPart, ProviderConnectionPoint, WebPart, ConsumerConnectionPoint)

Crea una connessione tra due controlli WebPart o GenericWebPart utilizzando solo i riferimenti ai controlli e i relativi oggetti ConnectionPoint specificati.

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

Crea una connessione tra due controlli WebPart o GenericWebPart utilizzando solo i riferimenti ai controlli, i relativi oggetti ConnectionPoint specificati e un oggetto WebPartTransformer.

CopyWebPart(WebPart)

Utilizzato dall'insieme di controlli Web part per creare una copia di un controllo WebPart o di un controllo server per aggiungere il controllo a una pagina Web.

CreateAvailableTransformers()

Crea un gruppo di trasformatori specificato nel file di configurazione di un sito Web e lo aggiunge all'insieme di trasformatori a cui fa riferimento la proprietà AvailableTransformers.

CreateChildControls()

Viene chiamato dal framework della pagina ASP.NET per notificare ai controlli server che usano un'implementazione basata sulla composizione di creare gli eventuali controlli figlio in essi contenuti in preparazione per il postback o il rendering.

(Ereditato da Control)
CreateControlCollection()

Restituisce l'insieme di tutti i controlli gestiti dal controllo WebPartManager in una pagina Web. La classe non può essere ereditata.

CreateDisplayModes()

Crea il gruppo di tutte le modalità di visualizzazione possibili per un'applicazione Web part.

CreateDynamicConnectionID()

Ottiene un valore univoco che funge da ID per una connessione dinamica.

CreateDynamicWebPartID(Type)

Genera un ID univoco per un controllo WebPart dinamico.

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

Crea un controllo speciale che viene inserito in una pagina e visualizzato per gli utenti finali, quando un tentativo di caricare o creare un controllo dinamico WebPart non riesce per qualche motivo.

CreatePersonalization()

Restituisce un oggetto di personalizzazione per inserirvi i dati di personalizzazione relativi alla pagina Web corrente.

CreateWebPart(Control)

Include un controllo server diverso da un controllo WebPart in un oggetto GenericWebPart, in modo che il controllo possa disporre della funzionalità Web part.

DataBind()

Associa un'origine dati al controllo server richiamato e a tutti i controlli figlio.

(Ereditato da Control)
DataBind(Boolean)

Associa un'origine dati al controllo server chiamato e ai relativi controlli figlio con un'opzione per generare l'evento DataBinding.

(Ereditato da Control)
DataBindChildren()

Associa un'origine dati al controllo server e ai relativi controlli figlio.

(Ereditato da Control)
DeleteWebPart(WebPart)

Rimuove in modo permanente un'istanza dinamica di un controllo WebPart da una pagina Web.

DisconnectWebPart(WebPart)

Rimuove un controllo WebPart o un controllo server in fase di chiusura o di eliminazione dalle connessioni a cui prende parte.

DisconnectWebParts(WebPartConnection)

Esegue il processo di disconnessione dei controlli server connessi in una pagina Web.

Dispose()

Abilita un controllo server alla pulizia finale prima che venga rilasciato dalla memoria.

(Ereditato da Control)
EndRenderTracing(TextWriter, Object)

Termina la traccia in fase di progettazione dei dati di rendering.

(Ereditato da Control)
EndWebPartConnecting()

Completa il processo di connessione di un controllo WebPart a un altro controllo.

EndWebPartEditing()

Completa il processo di modifica di un controllo WebPart.

EnsureChildControls()

Determina se il controllo server contiene controlli figlio. In caso contrario, li crea.

(Ereditato da Control)
EnsureID()

Crea un identificatore per i controlli a cui non è assegnato alcun identificatore.

(Ereditato da Control)
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
ExportWebPart(WebPart, XmlWriter)

Crea un file di descrizione XML che contiene i dati dello stato e i dati di proprietà relativi a un controllo server.

FindControl(String)

Cerca un controllo server nel contenitore dei nomi corrente con il parametro id specificato.

(Ereditato da Control)
FindControl(String, Int32)

Cerca nel contenitore di denominazione corrente un controllo server con il parametro id indicato e un intero, specificato nel parametro pathOffset, che agevola la ricerca. Non eseguire l'override di questa versione del metodo FindControl.

(Ereditato da Control)
Focus()

Sottoposto a override per impedire l'impostazione dello stato attivo sul controllo WebPartManager, in quanto non dispone di interfaccia utente.

GetConsumerConnectionPoints(WebPart)

Recupera l'insieme di oggetti ConsumerConnectionPoint che possono fungere da punti di connessione da un controllo server che funge da consumer all'interno di una connessione Web part.

GetCurrentWebPartManager(Page)

Recupera un riferimento all'istanza corrente del controllo WebPartManager in una pagina.

GetDesignModeState()

Ottiene i dati della fase di progettazione per un controllo.

(Ereditato da Control)
GetDisplayTitle(WebPart)

Ottiene una stringa che contiene il valore relativo alla proprietà DisplayTitle di un controllo WebPart.

GetExportUrl(WebPart)

Ottiene il percorso virtuale relativo e la stringa di query che fanno parte della richiesta di esportazione di un controllo WebPart da parte di un utente.

GetGenericWebPart(Control)

Ottiene un riferimento all'istanza del controllo GenericWebPart che contiene un controllo server.

GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetProviderConnectionPoints(WebPart)

Recupera l'insieme di oggetti ProviderConnectionPoint che possono fungere da punti di connessione da un controllo server che funge da provider all'interno di una connessione Web part.

GetRouteUrl(Object)

Ottiene l'URL corrispondente a un set di parametri di route.

(Ereditato da Control)
GetRouteUrl(RouteValueDictionary)

Ottiene l'URL corrispondente a un set di parametri di route.

(Ereditato da Control)
GetRouteUrl(String, Object)

Ottiene l'URL che corrisponde a un set di parametri di route e a un nome della route.

(Ereditato da Control)
GetRouteUrl(String, RouteValueDictionary)

Ottiene l'URL che corrisponde a un set di parametri di route e a un nome della route.

(Ereditato da Control)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
GetUniqueIDRelativeTo(Control)

Restituisce la parte con prefisso della proprietà UniqueID del controllo specificato.

(Ereditato da Control)
HasControls()

Determina se il controllo server contiene controlli figlio.

(Ereditato da Control)
HasEvents()

Restituisce un valore che indica se gli eventi vengono registrati per il controllo o eventuali controlli figlio.

(Ereditato da Control)
ImportWebPart(XmlReader, String)

Importa un file di descrizione XML che contiene i dati di stato e di proprietà per un controllo WebPart e applica i dati al controllo.

IsAuthorized(Type, String, String, Boolean)

Esegue i passaggi finali della procedura di determinazione delle autorizzazioni per un controllo da aggiungere a una pagina.

IsAuthorized(WebPart)

Esegue i passaggi iniziali della procedura di determinazione delle autorizzazioni per un controllo da aggiungere a una pagina.

IsLiteralContent()

Determina se il controllo server conserva solo il contenuto literal.

(Ereditato da Control)
LoadControlState(Object)

Carica i dati di stato del controllo salvati da una precedente richiesta della pagina e deve essere ripristinato alla richiesta successiva.

LoadCustomPersonalizationState(PersonalizationDictionary)

Archivia i dati di personalizzazione che sono stati passati al controllo WebPartManager dagli oggetti di personalizzazione da usare in un secondo momento durante il processo di inizializzazione.

LoadViewState(Object)

Ripristina le informazioni sullo stato di visualizzazione da una richiesta di pagina precedente salvata dal metodo SaveViewState().

(Ereditato da Control)
MapPathSecure(String)

Recupera il percorso fisico al quale è associato un percorso virtuale, assoluto o relativo.

(Ereditato da Control)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
MoveWebPart(WebPart, WebPartZoneBase, Int32)

Sposta un controllo WebPart o un controllo server da un'area WebPartZoneBase a un'altra o in una nuova posizione all'interno della stessa area.

OnAuthorizeWebPart(WebPartAuthorizationEventArgs)

Genera l'evento AuthorizeWebPart e richiama un gestore per l'evento, se presente.

OnBubbleEvent(Object, EventArgs)

Determina se l'evento per il controllo server viene passato a un livello superiore nella gerarchia dei controlli server dell'interfaccia utente per la pagina.

(Ereditato da Control)
OnConnectionsActivated(EventArgs)

Genera l'evento ConnectionsActivated che indica che una pagina e i relativi controlli sono stati caricati e che sono state attivate le connessioni nella pagina per avviare la condivisione dei dati.

OnConnectionsActivating(EventArgs)

Genera l'evento ConnectionsActivating che indica che una pagina e i relativi controlli sono stati caricati e che il processo di attivazione delle connessioni può iniziare.

OnDataBinding(EventArgs)

Genera l'evento DataBinding.

(Ereditato da Control)
OnDisplayModeChanged(WebPartDisplayModeEventArgs)

Genera l'evento DisplayModeChanged per indicare che il controllo WebPartManager ha completato il processo di passaggio da una modalità di visualizzazione a un'altra in una pagina Web.

OnDisplayModeChanging(WebPartDisplayModeCancelEventArgs)

Genera l'evento DisplayModeChanging per indicare che il controllo WebPartManager sta eseguendo il passaggio da una modalità di visualizzazione a un'altra in una pagina Web.

OnInit(EventArgs)

Genera l'evento Init, che è il primo evento del ciclo di vita del controllo WebPartManager.

OnLoad(EventArgs)

Genera l'evento Load.

(Ereditato da Control)
OnPreRender(EventArgs)

Genera l'evento PreRender, che si verifica poco prima del rendering di un controllo WebPartManager in una pagina Web.

OnSelectedWebPartChanged(WebPartEventArgs)

Genera l'evento SelectedWebPartChanged, che si verifica dopo la nuova selezione o l'annullamento della selezione del controllo WebPart.

OnSelectedWebPartChanging(WebPartCancelEventArgs)

Genera l'evento SelectedWebPartChanging, che si verifica durante il processo di modifica del controllo WebPart correntemente selezionato.

OnUnload(EventArgs)

Genera l'evento di base Unload e rimuove l'istanza di WebPartManager da una pagina Web.

OnWebPartAdded(WebPartEventArgs)

Genera l'evento WebPartAdded, che si verifica dopo l'aggiunta di un controllo WebPart a una pagina.

OnWebPartAdding(WebPartAddingEventArgs)

Genera l'evento WebPartAdding, che si verifica durante il processo di aggiunta di un controllo WebPart (o di un controllo server o utente) a un'area WebPartZoneBase.

OnWebPartClosed(WebPartEventArgs)

Genera l'evento WebPartClosed per segnalare che un controllo è stato rimosso dalla pagina.

OnWebPartClosing(WebPartCancelEventArgs)

Genera l'evento WebPartClosing, che si verifica durante il processo di rimozione di un controllo WebPart o di un controllo server da una pagina.

OnWebPartDeleted(WebPartEventArgs)

Genera l'evento WebPartDeleted, che si verifica dopo l'eliminazione permanente di un controllo WebPart da una pagina.

OnWebPartDeleting(WebPartCancelEventArgs)

Genera l'evento WebPartDeleting, che indica il processo di eliminazione di un controllo dinamico WebPart (o di un controllo server o utente contenuto in un'area WebPartZoneBase).

OnWebPartMoved(WebPartEventArgs)

Genera l'evento WebPartMoved, che si verifica dopo lo spostamento di un controllo WebPart in una posizione diversa in una pagina.

OnWebPartMoving(WebPartMovingEventArgs)

Genera l'evento WebPartMoving, che indica il processo di spostamento di un controllo WebPart o di un controllo server o utente presente in un'area WebPartZoneBase.

OnWebPartsConnected(WebPartConnectionsEventArgs)

Genera l'evento WebPartsConnected, che si verifica dopo la creazione di una connessione tra controlli WebPart.

OnWebPartsConnecting(WebPartConnectionsCancelEventArgs)

Genera l'evento WebPartsConnecting, che si verifica durante il processo di creazione di una connessione tra due controlli WebPart o controlli server o utente contenuti in un'area WebPartZoneBase.

OnWebPartsDisconnected(WebPartConnectionsEventArgs)

Genera l'evento WebPartsDisconnected, che si verifica dopo che una connessione tra controlli WebPart è terminata.

OnWebPartsDisconnecting(WebPartConnectionsCancelEventArgs)

Genera l'evento WebPartsDisconnecting, che indica il processo di chiusura di una connessione tra due controlli WebPart o controlli server o utente presenti in un'area WebPartZoneBase.

OpenFile(String)

Ottiene un oggetto Stream utilizzato per leggere un file.

(Ereditato da Control)
RaiseBubbleEvent(Object, EventArgs)

Assegna eventuali origini dell'evento e relative informazioni al controllo padre.

(Ereditato da Control)
RegisterClientScript()

Consente al controllo WebPartManager di generare script lato client utilizzato per varie funzioni di personalizzazione, come il trascinamento di controlli WebPart in una pagina Web.

RemovedControl(Control)

Chiamato dopo che un controllo figlio viene rimosso dalla raccolta Controls dell'oggetto Control.

(Ereditato da Control)
Render(HtmlTextWriter)

Sottoposto a override per impedire il rendering di contenuti da parte del controllo WebPartManager.

RenderChildren(HtmlTextWriter)

Restituisce il contenuto degli elementi figlio di un controllo server a un oggetto HtmlTextWriter specificato, che scrive il contenuto di cui eseguire il rendering nel client.

(Ereditato da Control)
RenderControl(HtmlTextWriter)

Restituisce il contenuto del controllo server a un oggetto HtmlTextWriter specificato e archivia le informazioni di traccia relative al controllo se la funzionalità di traccia è abilitata.

(Ereditato da Control)
RenderControl(HtmlTextWriter, ControlAdapter)

Restituisce il contenuto del controllo server a un oggetto HtmlTextWriter specificato utilizzando un oggetto ControlAdapter specificato.

(Ereditato da Control)
ResolveAdapter()

Ottiene l'adattatore del controllo responsabile del rendering del controllo specificato.

(Ereditato da Control)
ResolveClientUrl(String)

Ottiene un URL che può essere utilizzato dal browser.

(Ereditato da Control)
ResolveUrl(String)

Converte un URL in un formato utilizzabile dal client richiedente.

(Ereditato da Control)
SaveControlState()

Salva i dati dello stato relativi al controllo WebPartManager in modo da ripristinare i dati per future richieste nella pagina Web che contiene il controllo.

SaveCustomPersonalizationState(PersonalizationDictionary)

Salva i dati di stato della personalizzazione gestiti dal controllo WebPartManager, in modo che sia possibile ricaricarli ogni volta che si esegue il caricamento della pagina.

SaveViewState()

Salva eventuali modifiche dello stato di visualizzazione di un controllo server apportate dopo il postback della pagina nel server.

(Ereditato da Control)
SetDesignModeState(IDictionary)

Imposta i dati della fase di progettazione per un controllo.

(Ereditato da Control)
SetPersonalizationDirty()

Imposta un flag che indica che i dati della personalizzazione personalizzati del controllo WebPartManager sono stati modificati.

SetRenderMethodDelegate(RenderMethod)

Assegna un delegato del gestore eventi per eseguire il rendering del controllo server e del relativo contenuto nel controllo padre.

(Ereditato da Control)
SetSelectedWebPart(WebPart)

Imposta il valore della proprietà SelectedWebPart su un valore uguale a quello del controllo WebPart correntemente selezionato o del controllo server.

SetTraceData(Object, Object)

Imposta i dati di traccia per la traccia durante la fase di progettazione dei dati di rendering, utilizzando la chiave dei dati di traccia e il valore dei dati di traccia.

(Ereditato da Control)
SetTraceData(Object, Object, Object)

Imposta i dati di traccia per la traccia durante la fase di progettazione dei dati di rendering, utilizzando l'oggetto tracciato, la chiave dei dati di traccia e il valore dei dati di traccia.

(Ereditato da Control)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)
TrackViewState()

Applica i dati di stato della personalizzazione al controllo WebPartManager e chiama il metodo di base per consentire la registrazione delle modifiche apportate ai dati relativi allo stato di visualizzazione del controllo.

Eventi

AuthorizeWebPart

Si verifica quando viene chiamato il metodo IsAuthorized per determinare se è possibile aggiungere a una pagina un controllo WebPart o un controllo server.

ConnectionsActivated

Si verifica dopo che tutte le connessioni Web part correnti in una pagina sono state attivate e hanno avviato la condivisione dei dati tra i controlli consumer e provider coinvolti in ciascuna connessione.

ConnectionsActivating

Si verifica durante il processo di attivazione di tutte le connessioni Web stabilite in una pagina Web.

DataBinding

Viene generato quando il controllo server viene associato a un'origine dati.

(Ereditato da Control)
DisplayModeChanged

Si verifica dopo la modifica della modalità di visualizzazione corrente in una pagina Web part.

DisplayModeChanging

Si verifica quando, in una pagina Web, un utente sceglie un verbo che avvia il processo di passaggio a una modalità di visualizzazione diversa.

Disposed

Si verifica quando un controllo server viene rilasciato dalla memoria, ossia nell'ultima fase della durata di un controllo server quando viene richiesta una pagina ASP.NET.

(Ereditato da Control)
Init

Viene generato quando il controllo server viene inizializzato, ovvero nella prima fase della sua durata.

(Ereditato da Control)
Load

Viene generato quando il controllo server è caricato nell'oggetto Page.

(Ereditato da Control)
PreRender

Si verifica dopo il caricamento dell'oggetto Control ma prima del rendering.

(Ereditato da Control)
SelectedWebPartChanged

Si verifica dopo che la selezione di un controllo WebPart è cambiata ed è stata spostata a un altro controllo in una pagina Web.

SelectedWebPartChanging

Si verifica durante il processo di modifica del controllo WebPart o del controllo server correntemente selezionato in una pagina Web.

Unload

Viene generato quando il controllo server viene scaricato dalla memoria.

(Ereditato da Control)
WebPartAdded

Si verifica dopo l'aggiunta di un controllo dinamico WebPart o di un altro controllo server a un'area WebPartZoneBase per indicare che l'operazione di aggiunta del controllo è riuscita.

WebPartAdding

Si verifica durante il processo di aggiunta di un controllo dinamico WebPart o un altro controllo server a un'area WebPartZoneBase.

WebPartClosed

Si verifica quando un controllo WebPart statico (o un controllo server o utente) viene rimosso da una pagina.

WebPartClosing

Si verifica durante il processo di rimozione di un controllo WebPart (o di un controllo server o utente) da una pagina.

WebPartDeleted

Si verifica dopo che un controllo WebPart o un altro controllo server è stato eliminato da un'area WebPartZoneBase.

WebPartDeleting

Si verifica durante il processo di eliminazione permanente di un'istanza di un controllo dinamico WebPart o un altro controllo server da un'area WebPartZoneBase.

WebPartMoved

Si verifica dopo che un controllo WebPart o un controllo server è stato spostato in una posizione diversa in una pagina Web.

WebPartMoving

Si verifica durante il processo di spostamento di un controllo dinamico WebPart o un altro controllo server contenuto in un'area WebPartZoneBase.

WebPartsConnected

Si verifica quando è stata stabilita una connessione specifica tra controlli WebPart (o controlli server o utente).

WebPartsConnecting

Si verifica durante il processo di creazione di una connessione tra controlli WebPart (o controlli server o utente posizionati in un'area WebPartZoneBase).

WebPartsDisconnected

Si verifica dopo la chiusura di una connessione tra due controlli WebPart o controlli server.

WebPartsDisconnecting

Si verifica durante il processo di chiusura della connessione tra controlli WebPart o controlli server connessi in precedenza.

Implementazioni dell'interfaccia esplicita

IControlBuilderAccessor.ControlBuilder

Per una descrizione di questo membro, vedere ControlBuilder.

(Ereditato da Control)
IControlDesignerAccessor.GetDesignModeState()

Per una descrizione di questo membro, vedere GetDesignModeState().

(Ereditato da Control)
IControlDesignerAccessor.SetDesignModeState(IDictionary)

Per una descrizione di questo membro, vedere SetDesignModeState(IDictionary).

(Ereditato da Control)
IControlDesignerAccessor.SetOwnerControl(Control)

Per una descrizione di questo membro, vedere SetOwnerControl(Control).

(Ereditato da Control)
IControlDesignerAccessor.UserData

Per una descrizione di questo membro, vedere UserData.

(Ereditato da Control)
IDataBindingsAccessor.DataBindings

Per una descrizione di questo membro, vedere DataBindings.

(Ereditato da Control)
IDataBindingsAccessor.HasDataBindings

Per una descrizione di questo membro, vedere HasDataBindings.

(Ereditato da Control)
IExpressionsAccessor.Expressions

Per una descrizione di questo membro, vedere Expressions.

(Ereditato da Control)
IExpressionsAccessor.HasExpressions

Per una descrizione di questo membro, vedere HasExpressions.

(Ereditato da Control)
IParserAccessor.AddParsedSubObject(Object)

Per una descrizione di questo membro, vedere AddParsedSubObject(Object).

(Ereditato da Control)
IPersonalizable.IsDirty

Ottiene un valore che indica se i dati di stato personalizzati della personalizzazione gestiti dal controllo WebPartManager sono stati modificati in una pagina Web.

IPersonalizable.Load(PersonalizationDictionary)

Restituisce i dati sullo stato di personalizzazione salvati in precedenza che devono essere caricati nel controllo WebPartManager.

IPersonalizable.Save(PersonalizationDictionary)

Salva i dati di stato della personalizzazione personalizzati gestiti dal controllo WebPartManager.

Metodi di estensione

FindDataSourceControl(Control)

Restituisce l'origine dati associata al controllo dati per il controllo specificato.

FindFieldTemplate(Control, String)

Restituisce il modello di campo per la colonna specificata nel contenitore di denominazione del controllo specificato.

FindMetaTable(Control)

Restituisce l'oggetto metatabella per il controllo contenitore dei dati.

GetDefaultValues(INamingContainer)

Ottiene l'insieme di valori predefiniti per il controllo dei dati specificato.

GetMetaTable(INamingContainer)

Ottiene i metadati della tabella per il controllo dei dati specificato.

SetMetaTable(INamingContainer, MetaTable)

Imposta i metadati della tabella per il controllo dei dati specificato.

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

Imposta il mapping dei valori predefiniti e dei metadati della tabella per il controllo dei dati specificato.

SetMetaTable(INamingContainer, MetaTable, Object)

Imposta il mapping dei valori predefiniti e dei metadati della tabella per il controllo dei dati specificato.

TryGetMetaTable(INamingContainer, MetaTable)

Determina se sono disponibili i metadati della tabella.

EnableDynamicData(INamingContainer, Type)

Abilita il comportamento dati dinamici per il controllo dei dati specificato.

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

Abilita il comportamento dati dinamici per il controllo dei dati specificato.

EnableDynamicData(INamingContainer, Type, Object)

Abilita il comportamento dati dinamici per il controllo dei dati specificato.

Si applica a

Vedi anche