WebPartManager.GetCurrentWebPartManager(Page) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Recupera un riferimento all'istanza corrente del controllo WebPartManager in una pagina.
public:
static System::Web::UI::WebControls::WebParts::WebPartManager ^ GetCurrentWebPartManager(System::Web::UI::Page ^ page);
public static System.Web.UI.WebControls.WebParts.WebPartManager GetCurrentWebPartManager (System.Web.UI.Page page);
static member GetCurrentWebPartManager : System.Web.UI.Page -> System.Web.UI.WebControls.WebParts.WebPartManager
Public Shared Function GetCurrentWebPartManager (page As Page) As WebPartManager
Parametri
- page
- Page
Pagina Web che contiene un'istanza del controllo WebPartManager.
Restituisce
Classe WebPartManager che fa riferimento all'istanza corrente del controllo in una pagina.
Eccezioni
page
è null
.
Esempio
Nell'esempio di codice riportato di seguito viene illustrato come utilizzare il metodo GetCurrentWebPartManager. L'esempio include due parti: un controllo server personalizzato e una pagina Web che ospita il controllo .
Il controllo personalizzato Label usa il GetCurrentWebPartManager metodo per recuperare l'ID del WebPartManager controllo nella pagina corrente e quindi visualizza l'ID.
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 class MyManagerIDLabel : Label
{
protected override void OnPreRender(EventArgs e)
{
EnsureChildControls();
this.Text =
WebPartManager.GetCurrentWebPartManager(Page).ID;
}
}
}
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 Class MyManagerIDLabel
Inherits Label
Protected Overrides Sub OnPreRender(ByVal e As EventArgs)
EnsureChildControls()
Me.Text = _
WebPartManager.GetCurrentWebPartManager(Page).ID
End Sub
End Class
End Namespace
Nell'esempio di codice seguente viene fornita la pagina Web che ospita il controllo in un'area WebPartZone .
<%@ Page Language="C#" %>
<%@ Register
Namespace="Samples.AspNet.CS.Controls"
TagPrefix="aspSample"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:WebPartManager ID="WebPartManager1" runat="server">
</asp:WebPartManager>
<asp:WebPartZone ID="WebPartZone1" runat="server">
<ZoneTemplate>
<aspSample:MyManagerIDLabel ID="mgrID" runat="server"
Title="Manager ID Label"
Description="Displays the ID of the current WebPartManger."/>
</ZoneTemplate>
</asp:WebPartZone>
</div>
</form>
</body>
</html>
<%@ Page Language="vb" %>
<%@ Register
Namespace="Samples.AspNet.VB.Controls"
TagPrefix="aspSample"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:WebPartManager ID="WebPartManager1" runat="server">
</asp:WebPartManager>
<asp:WebPartZone ID="WebPartZone1" runat="server">
<ZoneTemplate>
<aspSample:MyManagerIDLabel ID="mgrID" runat="server"
Title="Manager ID Label"
Description="Displays the ID of the current WebPartManger."/>
</ZoneTemplate>
</asp:WebPartZone>
</div>
</form>
</body>
</html>
Dopo aver caricato la pagina in un browser, si noti che l'ID del controllo corrente WebPartManager viene visualizzato all'interno del controllo personalizzato Label .
Commenti
Il GetCurrentWebPartManager metodo è utile nei contesti in cui si desidera recuperare un riferimento al controllo corrente WebPartManager . Uno scenario comune in cui ciò si verifica è se si sta scrivendo un controllo personalizzato che non è in grado di sapere durante lo sviluppo quale sarà l'ID del WebPartManager controllo nella relativa pagina.
Nota
Il GetCurrentWebPartManager metodo è statico, quindi è possibile chiamarlo direttamente senza che sia necessaria un'istanza di un WebPartManager controllo.
Alcuni controlli nel set di controlli Web part, ad esempio WebPart i controlli, dispongono di una WebPartManager proprietà in grado di recuperare un riferimento al controllo corrente WebPartManager . Pertanto, quando si usano tali controlli, è consigliabile usare questa proprietà per recuperare un riferimento.
Se si scrive codice in un contesto in cui si conosce l'ID del WebPartManager controllo, ad esempio scrivendo codice inline all'interno di una pagina Web, è più semplice ed efficiente fare riferimento direttamente al controllo usando il WebPartManager relativo ID.