次の方法で共有


WebPartManager.Connections プロパティ

定義

Web ページ上の現在の接続すべてのコレクションへの参照を取得します。

public:
 property System::Web::UI::WebControls::WebParts::WebPartConnectionCollection ^ Connections { System::Web::UI::WebControls::WebParts::WebPartConnectionCollection ^ get(); };
[System.ComponentModel.Browsable(false)]
public System.Web.UI.WebControls.WebParts.WebPartConnectionCollection Connections { get; }
[<System.ComponentModel.Browsable(false)>]
member this.Connections : System.Web.UI.WebControls.WebParts.WebPartConnectionCollection
Public ReadOnly Property Connections As WebPartConnectionCollection

プロパティ値

WebPartConnectionCollection オブジェクトのセットが格納された WebPartConnection

属性

次のコード例は、 コントロールの宣言型およびプログラムによる使用を WebPartManager 示しています。

このコード例には、次の 4 つの部分があります。

  • Web パーツ ページの表示モードを変更できるユーザー コントロール。

  • 接続できる 2 つのカスタム WebPart コントロールと <asp:webpartmanager> 要素を含む Web ページ。

  • 2 つのカスタム コントロールとカスタム WebPart インターフェイスを含むソース コード ファイル。

  • ブラウザーでのこの例の動作の説明。

次のコードには、例の Web ページ部分のみが含まれています。 また、カスタム ユーザー コントロールと、上記のカスタム コントロールのソース コードも必要になります。 クラスの概要の「例」セクションから、これら 2 つの項目を WebPartManager 取得します。

次の Web ページ コードは、 プロパティをプログラムで使用 Connections して、ページ上の現在の接続の数を取得する方法を示しています。 タグ セクションでは <script> 、コントロールの 2 つのイベントを処理するコードが WebPartManager プロパティに Connections アクセスしてカウントを取得します。

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

ブラウザーに Web ページを読み込んだ後、[ 表示モード ] ドロップダウン リスト コントロールをクリックし、[ 接続 ] を選択してページを接続モードに切り替えます。 接続モードでは、 要素を <asp:connectionszone> 使用して、コントロール間の接続を作成できます。 接続モードで、 ZIP コード コントロールのタイトル バーにある下向き矢印をクリックして動詞メニューをアクティブにし、[ 接続] をクリックします。 接続ユーザー インターフェイス (UI) が表示されたら、[ コンシューマーへの接続の作成 ] リンクをクリックします。 ドロップダウン リスト コントロールがあるセルが表示されます。 ドロップダウン リストで [ Weather Control ] を選択し、[ 接続 ] をクリックして 2 つのコントロールの接続を完了します。 [ 閉じる] をクリックし、[ 表示モード ] ドロップダウン リストを使用して、ページを通常のブラウズ モードに戻します。 ラベルには、接続の数とコントロールの数 WebPart が表示されます。 接続モードに戻り、2 つのコントロールを切断した場合は、ブラウズ モードに戻るときに、ラベルのコンテンツを更新する必要があり、接続はありません。

注釈

プロパティは Connections 、ページ上の現在の接続セットにアクセスする方法を提供します。 コレクション自体は読み取り専用であり、コレクションから特定の接続を操作する開発者は、 や DisconnectWebPartsなどのConnectWebPartsメソッドを使用WebPartManagerする必要があります。

適用対象

こちらもご覧ください