Freigeben über


ControlCollection.AddControl-Methode (Control, Range, String)

Fügt der ControlCollection im angegebenen Bereich das angegebene Control hinzu.

Namespace:  Microsoft.Office.Tools.Excel
Assembly:  Microsoft.Office.Tools.Excel (in Microsoft.Office.Tools.Excel.dll)

Syntax

'Declaration
Function AddControl ( _
    control As Control, _
    range As Range, _
    name As String _
) As ControlSite
ControlSite AddControl(
    Control control,
    Range range,
    string name
)

Parameter

Rückgabewert

Typ: Microsoft.Office.Tools.Excel.ControlSite
Ein Objekt, das das Steuerelement mit dem angegebenen Steuerelement im Arbeitsblatt darstellt.

Ausnahmen

Ausnahme Bedingung
ArgumentNullException

Das Argument für das Steuerelement, den Namen oder den Bereich ist nullNULL-Verweis (Nothing in Visual Basic), oder das Argument für den Namen hat die Länge 0 (null).

ControlNameAlreadyExistsException

Ein Steuerelement mit dem gleichen Namen ist bereits in der ControlCollection-Instanz vorhanden.

InvalidRangeException

Der angegebene Bereich ist nicht gültig. Bereiche, die mehrere Bereiche enthalten, können nicht verwendet werden. Der Bereich muss sich auf dem gleichen Arbeitsblatt wie die ControlCollection-Instanz befinden.

Hinweise

Mit dieser Methode können Sie der ControlCollection zur Laufzeit ein beliebiges Steuerelement hinzufügen. Weitere Informationen finden Sie unter Hinzufügen von Steuerelementen zu Office-Dokumenten zur Laufzeit.

Beispiele

Im folgenden Codebeispiel werden dem Arbeitsblatt mit der AddControl-Methode zwei benutzerdefinierte Steuerelemente hinzugefügt. Das erste Steuerelement wird in einen Zellbereich eingefügt. Das zweite Steuerelement wird an einer bestimmten Position eingefügt. Die Top-Eigenschaft des ersten benutzerdefinierten Steuerelements wird duch den Code geändert, wodurch das Steuerelement nur im Verhältnis zu dem ControlSite verschoben wird, das das Steuerelement auf dem Arbeitsblatt enthält. Anschließend wird im Code die Top-Eigenschaft des vom zweiten Benutzersteuerelement zurückgegebenen ControlSite festgelegt, um die korrekte Vorgehensweise zum Festlegen der Top-Eigenschaft des Steuerelements zu veranschaulichen.

    Private Sub ExcelRangeAddControl()

        Dim CustomUserControl As New UserControl1()
        Dim CustomUserControl2 As New UserControl2()

        Dim DynamicControl As Microsoft.Office.Tools.Excel.ListObject = Me.Controls.AddControl( _
            CustomUserControl, 0, 0, 150, 150, _
            "DynamicControl")

        Dim DynamicControl2 As Microsoft.Office.Tools.Excel. _
            ControlSite = Me.Controls.AddControl( _
            CustomUserControl2, 200, 0, 150, 150, _
            "DynamicControl2")

        CustomUserControl.BackColor = Color.Blue
        CustomUserControl2.BackColor = Color.Green

        CustomUserControl.Top = 100
        DynamicControl2.Top = 100

    End Sub

private void ExcelRangeAddControl()
{

    UserControl1 customUserControl = new UserControl1();
    UserControl2 customUserControl2 = new UserControl2();

    Microsoft.Office.Tools.Excel.ControlSite dynamicControl =
        this.Controls.AddControl(customUserControl,
        0, 0, 150, 150, "dynamicControl");

    Microsoft.Office.Tools.Excel.ControlSite dynamicControl2 =
        this.Controls.AddControl(customUserControl2, 200, 0,
        150, 150, "dynamicControl2");

    customUserControl.BackColor = Color.Blue;
    customUserControl2.BackColor = Color.Green;

    customUserControl.Top = 100;
    dynamicControl2.Top = 100;
}

.NET Framework-Sicherheit

Siehe auch

Referenz

ControlCollection Schnittstelle

AddControl-Überladung

Microsoft.Office.Tools.Excel-Namespace