Compartilhar via


Método ControlCollection.AddControl (Control, Range, Single, Single, String)

Adiciona o controle especificado para o ControlCollection no intervalo especificado, com o tamanho especificado.

Namespace:  Microsoft.Office.Tools.Word
Assembly:  Microsoft.Office.Tools.Word (em Microsoft.Office.Tools.Word.dll)

Sintaxe

'Declaração
Function AddControl ( _
    control As Control, _
    range As Range, _
    width As Single, _
    height As Single, _
    name As String _
) As ControlSite
ControlSite AddControl(
    Control control,
    Range range,
    float width,
    float height,
    string name
)

Parâmetros

Valor de retorno

Tipo: Microsoft.Office.Tools.Word.ControlSite
Um objeto que representa o controle que contém o controle especificado no documento.

Exceções

Exceção Condição
ArgumentNullException

O control, name, ou range argumento é nulluma referência nula (Nothing no Visual Basic), ou o name argumento tem comprimento zero.

ControlNameAlreadyExistsException

Um controle com o mesmo nome já está na ControlCollection instância.

InvalidRangeException

O intervalo especificado não é válido.

Comentários

Este método pode ser usado para adicionar qualquer controle para o ControlCollection em tempo de execução. For more information, see Adicionar controles a documentos do Office em tempo de execução.

Exemplos

O exemplo de código a seguir adiciona dois controles de usuário personalizado ao documento usando o AddControl método. O primeiro controle é adicionado a uma Range. O segundo controle é adicionado a um local específico. As alterações de código do Top propriedade do primeiro controle de usuário personalizada, apenas Move o controle em relação ao ControlSite que contém o controle no documento. O código define o Top propriedade da ControlSite retornado por um segundo controle de usuário para ilustrar a maneira correta para definir o Top a propriedade do controle.

Private Sub WordRangeAddControl()
    Me.Paragraphs(1).Range.InsertParagraphBefore()
    Dim CustomUserControl As New UserControl1()
    Dim CustomUserControl2 As New UserControl2()

    Dim DynamicControl As Microsoft.Office.Tools.Word.ControlSite = _
        Me.Controls.AddControl(CustomUserControl, _
        Me.Paragraphs(1).Range, 150, 150, "DynamicControl")

    Dim DynamicControl2 As Microsoft.Office.Tools.Word.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 WordRangeAddControl()
{
    this.Paragraphs[1].Range.InsertParagraphBefore();
    UserControl1 customUserControl = new UserControl1();
    UserControl2 customUserControl2 = new UserControl2();

    Microsoft.Office.Tools.Word.ControlSite dynamicControl =
        this.Controls.AddControl(customUserControl, 
        this.Paragraphs[1].Range, 150, 150, "dynamicControl");

    Microsoft.Office.Tools.Word.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;
}

Segurança do .NET Framework

Consulte também

Referência

ControlCollection Interface

Sobrecargas AddControl

Namespace Microsoft.Office.Tools.Word