次の方法で共有


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

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

このコード例には、 インターフェイスの両方のメンバーが IWebEditable 含まれています。 メソッドのオーバーライドは、 を作成ArrayListして 1 つ以上のCreateEditorPartsカスタム 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メソッドを使用すると、カスタム コントロール、コントロール、WebPartまたはユーザー コントロールに関連付けられているすべてのカスタム EditorPart コントロールのコレクションを作成し、オブジェクトとしてEditorPartCollection返します。 コントロールは WebPartManager コレクションを受け取り、サーバー コントロールが EditorPart 編集モードになるとすべてのコントロールのインスタンスを作成します。

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

注意

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

注意 (実装者)

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

適用対象

こちらもご覧ください