次の方法で共有


CatalogPartCollection コンストラクター

定義

CatalogPartCollection クラスの新しいインスタンスを初期化します。

オーバーロード

名前 説明
CatalogPartCollection()

CatalogPartCollection クラスの新しい空のインスタンスを初期化します。

CatalogPartCollection(ICollection)

CatalogPart コントロールのICollection コレクションを渡して、CatalogPartCollection クラスの新しいインスタンスを初期化します。

CatalogPartCollection(CatalogPartCollection, ICollection)

ゾーン内の既存のCatalogPart コントロールのICollection コレクションとコントロールの追加コレクションを渡して、CatalogPartCollection クラスの新しいインスタンスを初期化します。

注釈

CatalogPart コントロールを含むCatalogZoneBase ゾーンは、通常、CreateCatalogParts メソッドを使用してCatalogPartCollection オブジェクトを作成するコントロールです。 ただし、他のプログラム目的で独自の CatalogPartCollection オブジェクトを作成することもできます。

CatalogPartCollection()

CatalogPartCollection クラスの新しい空のインスタンスを初期化します。

public:
 CatalogPartCollection();
public CatalogPartCollection();
Public Sub New ()

注釈

CatalogPartCollection コンストラクターは、CatalogPartCollection クラスの空のインスタンスを初期化します。 コンストラクターのこのオーバーロードは、空のコレクション オブジェクトを作成するために、CreateCatalogParts メソッドのCatalogZone クラスによって内部的に使用されます。 その後、ゾーンは、子ゾーン テンプレートで宣言されているすべての CatalogPart コントロールのインスタンスを作成し、コレクションの内部メソッドを使用して追加します。

CatalogPartCollection コンストラクターのこのオーバーロードを使用して、CatalogPartCollectionの新しいインスタンスを作成し、CatalogPart コントロールを追加することはできません。 代わりに、 CatalogPartCollection コンストラクターに対して他のオーバーロードのいずれかを使用する必要があります。

こちらもご覧ください

適用対象

CatalogPartCollection(ICollection)

CatalogPart コントロールのICollection コレクションを渡して、CatalogPartCollection クラスの新しいインスタンスを初期化します。

public:
 CatalogPartCollection(System::Collections::ICollection ^ catalogParts);
public CatalogPartCollection(System.Collections.ICollection catalogParts);
new System.Web.UI.WebControls.WebParts.CatalogPartCollection : System.Collections.ICollection -> System.Web.UI.WebControls.WebParts.CatalogPartCollection
Public Sub New (catalogParts As ICollection)

パラメーター

catalogParts
ICollection

CatalogPart コントロールのICollection

次のコード例は、カスタム CatalogPartCollectionを作成し、バッチ操作を実行して、コレクション内の個々の CatalogPart コントロールを読み取り専用であっても変更する方法を示しています。 この例を実行するために必要な完全なコードについては、「 CatalogPartCollection クラスの概要」トピックの「例」セクションを参照してください。

Button1_Click メソッドのコードは、ArrayList オブジェクトを作成し、ページ内の 2 つのCatalogPart コントロールをオブジェクトに追加した後、CatalogPartCollection コンストラクターを使用して新しいCatalogPartCollection オブジェクトを作成します。 また、コレクション自体が読み取り専用であっても、基になる CatalogPart コントロールにバッチ変更を加える方法についても説明します。 このコードはコレクションをループ処理し、各コントロールの Description プロパティを更新します。

protected void Button1_Click(object sender, EventArgs e)
{
  ArrayList list = new ArrayList(2);
  list.Add(PageCatalogPart1);
  list.Add(DeclarativeCatalogPart1);
  // Pass an ICollection object to the constructor.
  CatalogPartCollection myParts = new CatalogPartCollection(list);
  foreach (CatalogPart catalog in myParts)
  {
    catalog.Description = "My " + catalog.DisplayTitle;
  }

  // Use the IndexOf property to locate a CatalogPart control.
  int PageCatalogPartIndex = myParts.IndexOf(PageCatalogPart1);
  myParts[PageCatalogPartIndex].ChromeType = PartChromeType.TitleOnly;

  // Use the Contains method to see if a CatalogPart control exists.
  if (myParts.Contains(PageCatalogPart1))
  {
    WebPart closedWebPart = null;
    WebPartDescriptionCollection descriptions = PageCatalogPart1.GetAvailableWebPartDescriptions();
    if (descriptions.Count > 0)
    {
      closedWebPart = PageCatalogPart1.GetWebPart(descriptions[0]);
      closedWebPart.AllowClose = false;
    }
  }
  
  // Use indexers to display the details of the CatalogPart controls.
  Label1.Text = String.Empty;
  Label1.Text =
    "<h3>PageCatalogPart Details</h3>" +
    "ID: " + myParts[0].ID + "<br />" +
    "Count: " + myParts[0].GetAvailableWebPartDescriptions().Count;
  Label1.Text += 
    "<h3>DeclarativeCatalogPart Details</h3>" +
    "ID: " + myParts["DeclarativeCatalogPart1"].ID + "<br />" +
    "Count: " + myParts["DeclarativeCatalogPart1"].GetAvailableWebPartDescriptions().Count;
}
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) 
    Dim list As New ArrayList(2)
    list.Add(PageCatalogPart1)
    list.Add(DeclarativeCatalogPart1)
    ' Pass an ICollection object to the constructor.
    Dim myParts As New CatalogPartCollection(list)
    Dim catalog As CatalogPart
    For Each catalog In  myParts
        catalog.Description = "My " + catalog.DisplayTitle
    Next catalog
    
    ' Use the IndexOf property to locate a CatalogPart control.
    Dim PageCatalogPartIndex As Integer = _
      myParts.IndexOf(PageCatalogPart1)
    myParts(PageCatalogPartIndex).ChromeType = PartChromeType.TitleOnly
    
    ' Use the Contains method to see if a CatalogPart control exists.
    If myParts.Contains(PageCatalogPart1) Then
        Dim closedWebPart As WebPart = Nothing
        Dim descriptions As WebPartDescriptionCollection = _
          PageCatalogPart1.GetAvailableWebPartDescriptions()
        If descriptions.Count > 0 Then
            closedWebPart = PageCatalogPart1.GetWebPart(descriptions(0))
            closedWebPart.AllowClose = False
        End If
    End If
    
    ' Use indexers to display the details of the CatalogPart controls.
    Label1.Text = String.Empty
    Label1.Text = _
      "<h3>PageCatalogPart Details</h3>" & _
      "ID: " & myParts(0).ID + "<br />" & _
      "Count: " & myParts(0).GetAvailableWebPartDescriptions().Count
    Label1.Text += _
      "<h3>DeclarativeCatalogPart Details</h3>" & _
      "ID: " & myParts("DeclarativeCatalogPart1").ID & "<br />" & _
      "Count: " & myParts("DeclarativeCatalogPart1") _
        .GetAvailableWebPartDescriptions().Count

End Sub 

ブラウザーでページを読み込むときに、[表示モード] ドロップダウン リスト コントロールで [カタログ] を選択して、ページを カタログモード に切り替えることができます。 [ CatalogPart プロパティの表示 ] ボタンをクリックすると、 CatalogPartCollection オブジェクトにアクセスし、含まれている CatalogPart コントロールの特定のプロパティが表示されます。 また、 DeclarativeCatalogPart コントロールの境界線内のタイトル テキストの上にマウス ポインターを置くと、ボタンをクリックしたときにコントロールに追加された新しい説明テキストが表示されます (説明はツールヒントに表示されます)。 [ページ カタログ] リンクをクリックしてPageCatalogPart コントロールを表示すると、更新された説明も表示されます。

注釈

CatalogPartCollection コンストラクターは、CatalogPartCollection クラスのインスタンスを初期化し、CatalogPart コントロールのコレクションを渡します。 これは、新しいCatalogPartCollection オブジェクトを作成し、CatalogPart コントロールを追加するために使用できるCatalogPartCollection コンストラクターのオーバーロードの 1 つです。

コンストラクターによって作成された CatalogPartCollection インスタンスは読み取り専用ですが、プログラムを使用してコレクション内の個々の CatalogPart コントロールにアクセスし、そのプロパティとメソッドを呼び出すことができます。

このコンストラクターを使用する一般的なシナリオの 1 つは、アイテムの関連グループの内容、外観、位置の変更など、一連の CatalogPart コントロール全体に対してバッチ操作を実行する場合です。

こちらもご覧ください

適用対象

CatalogPartCollection(CatalogPartCollection, ICollection)

ゾーン内の既存のCatalogPart コントロールのICollection コレクションとコントロールの追加コレクションを渡して、CatalogPartCollection クラスの新しいインスタンスを初期化します。

public:
 CatalogPartCollection(System::Web::UI::WebControls::WebParts::CatalogPartCollection ^ existingCatalogParts, System::Collections::ICollection ^ catalogParts);
public CatalogPartCollection(System.Web.UI.WebControls.WebParts.CatalogPartCollection existingCatalogParts, System.Collections.ICollection catalogParts);
new System.Web.UI.WebControls.WebParts.CatalogPartCollection : System.Web.UI.WebControls.WebParts.CatalogPartCollection * System.Collections.ICollection -> System.Web.UI.WebControls.WebParts.CatalogPartCollection
Public Sub New (existingCatalogParts As CatalogPartCollection, catalogParts As ICollection)

パラメーター

existingCatalogParts
CatalogPartCollection

ゾーン内の既存のCatalogPart コントロールのICollection

catalogParts
ICollection

追加のCatalogPart コントロールのICollection

こちらもご覧ください

適用対象