Metodo ControlCollection.AddControl (Control, Range, String)

Aggiunge l'oggetto Control specificato all'oggetto ControlCollection nell'intervallo specificato.

Spazio dei nomi:  Microsoft.Office.Tools.Excel
Assembly:  Microsoft.Office.Tools.Excel (in Microsoft.Office.Tools.Excel.dll)

Sintassi

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

Parametri

Valore restituito

Tipo: Microsoft.Office.Tools.Excel.ControlSite
Oggetto che rappresenta il controllo contenente il controllo specificato nel foglio di lavoro.

Eccezioni

Eccezione Condizione
ArgumentNullException

L'argomento relativo al controllo, al nome o all'intervallo è nullriferimento null (Nothing in Visual Basic) oppure la lunghezza dell'argomento relativo al nome è zero.

ControlNameAlreadyExistsException

Nell'istanza di ControlCollection è già presente un controllo con lo stesso nome.

InvalidRangeException

L'intervallo specificato non è valido. Impossibile utilizzare gli intervalli di più aree. L'intervallo deve trovarsi nello stesso foglio di lavoro dell'istanza di ControlCollection.

Note

È possibile utilizzare questo metodo per aggiungere un controllo qualsiasi all'oggetto ControlCollection in fase di esecuzione. Per ulteriori informazioni, vedere Aggiunta di controlli ai documenti di Office in fase di esecuzione.

Esempi

Nell'esempio di codice riportato di seguito vengono aggiunti due controlli utente personalizzati al foglio di lavoro utilizzando il metodo AddControl. Il primo controllo viene aggiunto a un intervallo di celle. Il secondo controllo viene aggiunto a una posizione specifica. Il codice modifica la proprietà Top del primo controllo utente personalizzato, la quale sposta solo il controllo relativo all'oggetto ControlSite che contiene il controllo nel foglio di lavoro. Il codice imposta quindi la proprietà Top dell'oggetto ControlSite restituito dal secondo controllo utente personalizzato per indicare la corretta impostazione della proprietà Top del controllo.

    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;
}

Sicurezza di .NET Framework

Vedere anche

Riferimenti

ControlCollection Interfaccia

Overload AddControl

Spazio dei nomi Microsoft.Office.Tools.Excel