Freigeben über


WebPartManager.StaticConnections Eigenschaft

Definition

Ruft einen Verweis auf die Auflistung aller als statische Verbindungen definierten WebPartConnection-Objekte auf einer Webseite ab.

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

Eigenschaftswert

Eine WebPartConnectionCollection, die alle statischen Verbindungen auf der Seite enthält.

Attribute

Beispiele

Im folgenden Codebeispiel wird die programmgesteuerte Verwendung der StaticConnections -Eigenschaft veranschaulicht.

Das Codebeispiel umfasst vier Teile:

  • Ein Benutzersteuerelement, mit dem Sie die Anzeigemodi auf einer Webpartseite ändern können.

  • Eine Quellcodedatei, die zwei benutzerdefinierte WebPart Steuerelemente und eine benutzerdefinierte Schnittstelle enthält.

  • Eine Webseite, die zwei benutzerdefinierte WebPart Steuerelemente enthält, die verbunden werden können, und ein <asp:webpartmanager> Element.

  • Eine Erklärung, wie das Beispiel in einem Browser funktioniert.

Der folgende Code enthält nur den Webseitenteil des Beispiels. Sie müssen auch die ersten beiden Teile des Beispiels - das benutzerdefinierte Benutzersteuerelement und den Quellcode für die benutzerdefinierten Steuerelemente und die Schnittstelle - aus dem Abschnitt Beispiel der WebPartManager Klassenübersicht abrufen. In diesem Thema werden auch Ihre Optionen zum Kompilieren der WebPart Steuerelemente erläutert.

Der dritte Teil des Codebeispiels ist die Webseite. Das deklarative Markup für die Seite enthält Register Anweisungen sowohl für das Benutzersteuerelement als auch für die benutzerdefinierten Steuerelemente. Es gibt ein <asp:webpartmanager> Element, ein <asp:webpartzone> Element, das die benutzerdefinierten Steuerelemente enthalten soll, und ein <asp:connectionszone> Element. Beachten Sie, dass der Code in der Page_Load -Methode überprüft, ob eine Verbindung bereits vorhanden ist, und, falls nicht, einen Anbieter, einen Consumer und ihre jeweiligen Verbindungspunkte definiert und dann eine neue Verbindung zu den statischen Verbindungen hinzufügt, auf die von der StaticConnections -Eigenschaft verwiesen wird.

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

Nachdem Sie die Webseite in einem Browser geladen haben, klicken Sie auf das Dropdown-Listensteuerelement Anzeigemodus , und wählen Sie Verbinden aus, um die Seite in den Verbindungsmodus zu wechseln. Im Verbindungsmodus wird das <asp:connectionszone> -Element verwendet, damit Sie Verbindungen zwischen Steuerelementen erstellen können. Klicken Sie im Verbindungsmodus auf den Abwärtspfeil in der Titelleiste des POSTLEITZAHL-Steuerelements , um das Menü "Verben" zu aktivieren, und klicken Sie dann auf Verbinden. Nachdem die Verbindungsbenutzerschnittstelle (Ui) angezeigt wurde, beachten Sie, dass bereits eine Verbindung durch den in der Page_Load -Methode enthaltenen Code erstellt wurde. Wenn Sie in einer späteren Browsersitzung zu dieser Seite zurückkehren, wird diese statische Verbindung bereits hergestellt und muss nicht jedes Mal neu erstellt werden, wenn die Seite geladen wird.

Hinweise

Die StaticConnections -Eigenschaft wird vom WebPartManager Steuerelement verwendet, um alle statischen Verbindungen auf einer Seite nachzuverfolgen und zu verwalten. Eine statische Verbindung muss im Gegensatz zu einer dynamischen Verbindung nicht jedes Mal einer Seite hinzugefügt werden, wenn die Seite gerendert wird.

Die Auflistung, auf die von dieser Eigenschaft verwiesen wird, enthält alle statischen Verbindungen, die auf der Seite vorhanden sind, unabhängig davon, ob sie programmgesteuert erstellt oder mit einem <asp:webpartconnection> Element im Markup der Seite angegeben werden.

Gilt für:

Weitere Informationen