Partager via


ControlCollection.AddControl, méthode (Control, Double, Double, Double, Double, String)

Ajoute le Control spécifié à ControlCollection selon l'emplacement et la taille spécifiés.

Espace de noms :  Microsoft.Office.Tools.Excel
Assembly :  Microsoft.Office.Tools.Excel (dans Microsoft.Office.Tools.Excel.dll)

Syntaxe

'Déclaration
Function AddControl ( _
    control As Control, _
    left As Double, _
    top As Double, _
    width As Double, _
    height As Double, _
    name As String _
) As ControlSite
ControlSite AddControl(
    Control control,
    double left,
    double top,
    double width,
    double height,
    string name
)

Paramètres

  • left
    Type : System.Double
    Distance, en points, entre le bord gauche du contrôle et le bord gauche de la feuille de calcul.
  • top
    Type : System.Double
    Distance, en points, entre le bord supérieur du contrôle et le bord supérieur de la feuille de calcul.

Valeur de retour

Type : Microsoft.Office.Tools.Excel.ControlSite
Objet qui représente le contrôle contenant le contrôle spécifié sur la feuille de calcul.

Exceptions

Exception Condition
ArgumentNullException

L'argument de contrôle ou de nom a la valeur nullune référence null (Nothing en Visual Basic) ou une longueur nulle.

ControlNameAlreadyExistsException

Un contrôle du même nom se trouve déjà dans l'instance de ControlCollection.

Notes

Cette méthode peut être utilisée pour ajouter n'importe quel contrôle ControlCollection au moment de l'exécution. Pour plus d'informations, consultez Ajout de contrôles à des documents Office au moment de l'exécution.

Exemples

L'exemple de code suivant ajoute deux contrôles utilisateur personnalisés à la feuille de calcul à l'aide de la méthode AddControl. Le premier contrôle est ajouté à une plage de cellules. Le deuxième contrôle est ajouté à un emplacement spécifique. Le code modifie la propriété Top du premier contrôle utilisateur personnalisé, ce qui déplace uniquement le contrôle par rapport au ControlSite qui contient le contrôle sur la feuille de calcul. Le code définit ensuite la propriété Top du ControlSite retourné par le deuxième contrôle utilisateur pour illustrer la façon correcte de définir la propriété Top du contrôle.

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

Sécurité .NET Framework

Voir aussi

Référence

ControlCollection Interface

AddControl, surcharge

Microsoft.Office.Tools.Excel, espace de noms