ToolboxItem.CreateComponentsCore メソッド

定義

ツールボックス項目が呼び出されたときに、コンポーネントまたはコンポーネントの配列を作成します。

オーバーロード

CreateComponentsCore(IDesignerHost)

ツールボックス項目が呼び出されたときに、コンポーネントまたはコンポーネントの配列を作成します。

CreateComponentsCore(IDesignerHost, IDictionary)

ツールボックス項目が呼び出されたときに、コンポーネントの配列を作成します。

CreateComponentsCore(IDesignerHost)

ツールボックス項目が呼び出されたときに、コンポーネントまたはコンポーネントの配列を作成します。

protected:
 virtual cli::array <System::ComponentModel::IComponent ^> ^ CreateComponentsCore(System::ComponentModel::Design::IDesignerHost ^ host);
protected virtual System.ComponentModel.IComponent[] CreateComponentsCore (System.ComponentModel.Design.IDesignerHost host);
protected virtual System.ComponentModel.IComponent[]? CreateComponentsCore (System.ComponentModel.Design.IDesignerHost? host);
abstract member CreateComponentsCore : System.ComponentModel.Design.IDesignerHost -> System.ComponentModel.IComponent[]
override this.CreateComponentsCore : System.ComponentModel.Design.IDesignerHost -> System.ComponentModel.IComponent[]
Protected Overridable Function CreateComponentsCore (host As IDesignerHost) As IComponent()

パラメーター

host
IDesignerHost

ツールボックス項目をホストする IDesignerHost

戻り値

作成された IComponent オブジェクトの配列。

注釈

が でないnull場合host、 メソッドはCreateComponentsCore新しいコンポーネントをデザイナーに追加します。

注意 (継承者)

メソッドを CreateComponentsCore(IDesignerHost) オーバーライドして、ツールボックス項目が作成するコンポーネントを返すことができます。

こちらもご覧ください

適用対象

CreateComponentsCore(IDesignerHost, IDictionary)

ツールボックス項目が呼び出されたときに、コンポーネントの配列を作成します。

protected:
 virtual cli::array <System::ComponentModel::IComponent ^> ^ CreateComponentsCore(System::ComponentModel::Design::IDesignerHost ^ host, System::Collections::IDictionary ^ defaultValues);
protected virtual System.ComponentModel.IComponent[] CreateComponentsCore (System.ComponentModel.Design.IDesignerHost host, System.Collections.IDictionary defaultValues);
protected virtual System.ComponentModel.IComponent[]? CreateComponentsCore (System.ComponentModel.Design.IDesignerHost? host, System.Collections.IDictionary? defaultValues);
abstract member CreateComponentsCore : System.ComponentModel.Design.IDesignerHost * System.Collections.IDictionary -> System.ComponentModel.IComponent[]
override this.CreateComponentsCore : System.ComponentModel.Design.IDesignerHost * System.Collections.IDictionary -> System.ComponentModel.IComponent[]
Protected Overridable Function CreateComponentsCore (host As IDesignerHost, defaultValues As IDictionary) As IComponent()

パラメーター

host
IDesignerHost

コンポーネントの作成時に使用するデザイナー ホスト。

defaultValues
IDictionary

コンポーネントの初期化に使用するプロパティ名/値ペアの既定値のディクショナリ。

戻り値

作成された IComponent オブジェクトの配列。

次のコード例では、カスタム ツールボックス項目の実装に 対して CreateComponentsCore から ToolboxItem 派生したクラスで メソッドを使用する方法を示します。 このコード例は、ToolboxItem クラスのために提供されている大規模な例の一部です。

protected override IComponent[] CreateComponentsCore(
    System.ComponentModel.Design.IDesignerHost host, 
    System.Collections.IDictionary defaultValues)
{
    // Get the string we want to fill in the custom
    // user control.  If the user cancels out of the dialog,
    // return null or an empty array to signify that the 
    // tool creation was canceled.
    using (ToolboxItemDialog d = new ToolboxItemDialog())
    {
        if (d.ShowDialog() == DialogResult.OK)
        {
            string text = d.CreationText;

            IComponent[] comps =
                base.CreateComponentsCore(host, defaultValues);
            // comps will have a single component: our data type.
            ((UserControl1)comps[0]).LabelText = text;
            return comps;
        }
        else
        {
            return null;
        }
    }
}
Protected Overrides Function CreateComponentsCore( _
    ByVal host As System.ComponentModel.Design.IDesignerHost, _
    ByVal defaultValues As System.Collections.IDictionary) _
    As IComponent()
    ' Get the string we want to fill in the custom
    ' user control.  If the user cancels out of the dialog,
    ' return null or an empty array to signify that the 
    ' tool creation was canceled.
    Using d As New ToolboxItemDialog()
        If d.ShowDialog() = DialogResult.OK Then
            Dim [text] As String = d.CreationText
            Dim comps As IComponent() = _
                MyBase.CreateComponentsCore(host, defaultValues)
            ' comps will have a single component: our data type.
            CType(comps(0), UserControl1).LabelText = [text]
            Return comps
        Else
            Return Nothing
        End If
    End Using
End Function

注釈

が でないnull場合host、 メソッドはCreateComponentsCore新しいコンポーネントをデザイナーに追加します。

適用対象