IWebEditable.CreateEditorParts メソッド

定義

EditorPart インターフェイスを実装するサーバー コントロールに関連付けられているカスタム IWebEditable コントロールのコレクションを返します。

public:
 System::Web::UI::WebControls::WebParts::EditorPartCollection ^ CreateEditorParts();
public System.Web.UI.WebControls.WebParts.EditorPartCollection CreateEditorParts();
abstract member CreateEditorParts : unit -> System.Web.UI.WebControls.WebParts.EditorPartCollection
Public Function CreateEditorParts () As EditorPartCollection

返品

サーバー コントロールに関連付けられているカスタム EditorPartCollection コントロールのコレクションを含むEditorPart

次のコード例は、カスタム CreateEditorParts コントロールのWebPart メソッドのオーバーライドを示しています。 サンプルを実行するために必要な完全なソース コードについては、 IWebEditable クラスの概要に関するトピックの「例」セクションを参照してください。

このコード例には、 IWebEditable インターフェイスの両方のメンバーが含まれています。 CreateEditorParts メソッドのオーバーライドにより、1 つ以上のカスタム ArrayList コントロールを収集するEditorPartが作成され、そのリストを使用してEditorPartCollection オブジェクトが作成されることに注意してください。

public override EditorPartCollection CreateEditorParts()
{
  ArrayList editorArray = new ArrayList();
  TextDisplayEditorPart edPart = new TextDisplayEditorPart();
  edPart.ID = this.ID + "_editorPart1";
  editorArray.Add(edPart);
  EditorPartCollection editorParts = 
    new EditorPartCollection(editorArray);
  return editorParts;
}

public override object WebBrowsableObject
{
  get { return this; }
}
Public Overrides Function CreateEditorParts() _
                            As EditorPartCollection
  Dim editorArray As New ArrayList()
  Dim edPart as New TextDisplayEditorPart()
  edPart.ID = Me.ID & "_editorPart1"
  editorArray.Add(edPart)
  Dim editorParts As New EditorPartCollection(editorArray)
  Return editorParts

End Function

Public Overrides ReadOnly Property WebBrowsableObject() _
                                    As Object
  Get
    Return Me
  End Get
End Property

注釈

CreateEditorParts メソッドを使用すると、カスタム コントロール、EditorPart コントロール、またはユーザー コントロールに関連付けられているすべてのカスタム WebPart コントロールのコレクションを作成し、EditorPartCollection オブジェクトとして返します。 WebPartManager コントロールは、コレクションを取得し、サーバー コントロールが編集モードになったときに常にすべてのEditorPart コントロールのインスタンスを作成します。

通常、このメソッドは、WebPart メソッドをオーバーライドすることによって、カスタム CreateEditorParts コントロールに実装します。 このメソッドでは、コントロールに関連付けるカスタム EditorPart コントロールのインスタンスを作成し、 EditorPartCollection オブジェクトに追加して、そのオブジェクトを返します。 その後、EditorPart コントロールのコレクションが、EditorParts ゾーンのEditorZoneBase プロパティに割り当てられます。

Note

EditorPart メソッドの実装でEditorPart コントロールのコレクションに追加されるすべてのCreateEditorPartsには、その ID プロパティに値が割り当てられている必要があります。それ以外の場合は、コレクションが EditorParts プロパティに割り当てられると例外がスローされます。

注意 (実装者)

EditorPartCollection メソッドが返すCreateEditorParts() オブジェクトは読み取り専用であり、個々のコントロールを追加するアクセス可能なメソッドはありません。 ただし、メソッドのオーバーライドまたは実装では、ICollectionなどの別の種類のArrayList オブジェクトを作成して、すべてのカスタム EditorPart コントロールを格納し、新しいEditorPartCollection オブジェクトを作成するときにコンストラクターに渡すことができます。 コード例については、「例」セクションを参照してください。

適用対象

こちらもご覧ください