WebPartManager.StaticConnections Proprietà
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.
Ottiene un riferimento all'insieme di tutti gli WebPartConnection oggetti di una pagina Web definiti come connessioni statiche.
public:
property System::Web::UI::WebControls::WebParts::WebPartConnectionCollection ^ StaticConnections { System::Web::UI::WebControls::WebParts::WebPartConnectionCollection ^ get(); };
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
public System.Web.UI.WebControls.WebParts.WebPartConnectionCollection StaticConnections { get; }
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
member this.StaticConnections : System.Web.UI.WebControls.WebParts.WebPartConnectionCollection
Public ReadOnly Property StaticConnections As WebPartConnectionCollection
Valore della proprietà
Oggetto WebPartConnectionCollection contenente tutte le connessioni statiche nella pagina.
- Attributi
Esempio
Nell'esempio di codice seguente viene illustrato l'uso a livello di codice della StaticConnections proprietà .
L'esempio di codice ha quattro parti:
Controllo utente che consente di modificare le modalità di visualizzazione in una pagina web part.
File di codice sorgente che contiene due controlli personalizzati WebPart e un'interfaccia personalizzata.
Pagina Web che contiene due controlli personalizzati WebPart che possono essere connessi e un
<asp:webpartmanager>elemento.Spiegazione del funzionamento dell'esempio in un browser.
Il codice seguente contiene solo la parte della pagina Web dell'esempio. Sarà anche necessario ottenere le prime due parti del controllo utente personalizzato, ovvero il codice sorgente per i controlli personalizzati e l'interfaccia, dalla sezione Esempio della panoramica della WebPartManager classe. Questo argomento illustra anche le opzioni per la compilazione dei WebPart controlli.
La terza parte dell'esempio di codice è la pagina Web. Il markup dichiarativo per la pagina 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 . Si noti che nel Page_Load metodo il codice verifica se esiste già una connessione e, in caso contrario, definisce un provider, un consumer e i rispettivi punti di connessione e quindi aggiunge una nuova connessione al set di connessioni statiche a cui fa riferimento la StaticConnections proprietà .
<%@ 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">
protected void Page_Load(object sender, EventArgs e)
{
// Define provider, consumer, and connection points.
WebPart provider = mgr.WebParts["zip1"];
ProviderConnectionPoint provConnPoint =
mgr.GetProviderConnectionPoints(provider)["ZipCodeProvider"];
WebPart consumer = mgr.WebParts["weather1"];
ConsumerConnectionPoint consConnPoint =
mgr.GetConsumerConnectionPoints(consumer)["ZipCodeConsumer"];
// Check whether the connection already exists.
if (mgr.CanConnectWebParts(provider, provConnPoint,
consumer, consConnPoint))
{
// Create a new static connection.
WebPartConnection conn = new WebPartConnection();
conn.ID = "staticConn1";
conn.ConsumerID = "weather1";
conn.ConsumerConnectionPointID = "ZipCodeConsumer";
conn.ProviderID = "zip1";
conn.ProviderConnectionPointID = "ZipCodeProvider";
mgr.StaticConnections.Add(conn);
}
}
</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="mgr" runat="server" />
<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 />
<!-- 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 Page_Load(ByVal sender As Object, _
ByVal e As System.EventArgs)
' Define provider, consumer, and connection points.
Dim provider As WebPart = mgr.WebParts("zip1")
Dim provConnPoint As ProviderConnectionPoint = _
mgr.GetProviderConnectionPoints(provider)("ZipCodeProvider")
Dim consumer As WebPart = mgr.WebParts("weather1")
Dim consConnPoint As ConsumerConnectionPoint = _
mgr.GetConsumerConnectionPoints(consumer)("ZipCodeConsumer")
' Check whether the connection already exists.
If mgr.CanConnectWebParts(provider, provConnPoint, _
consumer, consConnPoint) Then
' Create a new static connection.
Dim conn As New WebPartConnection()
conn.ID = "staticConn1"
conn.ConsumerID = "weather1"
conn.ConsumerConnectionPointID = "ZipCodeConsumer"
conn.ProviderID = "zip1"
conn.ProviderConnectionPointID = "ZipCodeProvider"
mgr.StaticConnections.Add(conn)
End If
End Sub
</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="mgr" runat="server" />
<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 />
<!-- Add a ConnectionsZone so users can connect
controls. -->
<asp:ConnectionsZone ID="ConnectionsZone1"
runat="server" />
</div>
</form>
</body>
</html>
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 della pagina. La modalità Connetti usa l'elemento <asp:connectionszone> per consentire di creare connessioni tra i controlli. In modalità di connessione fare clic sulla freccia 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 di connessione, si noti che una connessione è già stata creata dal codice contenuto nel Page_Load metodo . Se si torna a questa pagina in una sessione del browser successiva, questa connessione statica verrà già stabilita e non sarà necessario ricreare ogni volta che la pagina viene caricata.
Commenti
La StaticConnections proprietà viene utilizzata dal WebPartManager controllo per tenere traccia e gestire tutte le connessioni statiche in una pagina. Una connessione statica, a differenza di una connessione dinamica, non deve essere aggiunta a una pagina ogni volta che viene eseguito il rendering della pagina.
L'insieme a cui fa riferimento questa proprietà contiene tutte le connessioni statiche presenti nella pagina, indipendentemente dal fatto che vengano create a livello di codice o specificate con un <asp:webpartconnection> elemento nel markup della pagina.