共用方式為


ControlCollection.AddControl 方法 (Control, Range, Single, Single, String)

將具有指定大小的指定控制項加入至指定範圍內的 ControlCollection

命名空間:  Microsoft.Office.Tools.Word
組件:   Microsoft.Office.Tools.Word (在 Microsoft.Office.Tools.Word.dll 中)
  Microsoft.Office.Tools.Word.v4.0.Utilities (在 Microsoft.Office.Tools.Word.v4.0.Utilities.dll 中)

語法

'宣告
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
)

參數

  • width
    型別:System.Single
    控制項的寬度 (以點為單位)。
  • height
    型別:System.Single
    控制項的高度 (以點為單位)。

傳回值

型別:Microsoft.Office.Tools.Word.ControlSite
表示控制項的物件,而該控制項包含文件上指定的控制項。

例外狀況

例外狀況 條件
ArgumentNullException

name 或 range 引數是 nullnull 參考 (即 Visual Basic 中的 Nothing),或者,name 引數的長度為 0。

ControlNameAlreadyExistsException

具有相同名稱的控制項已經存在於 ControlCollection 執行個體中。

ControlCouldNotBeInitializedException

control 引數為 nullnull 參考 (即 Visual Basic 中的 Nothing)。

備註

可以在執行階段使用這個方法,將任何控制項加入 ControlCollection。 如需詳細資訊,請參閱在執行階段將控制項加入至 Office 文件

範例

下列程式碼範例使用 AddControl 方法加入兩個自訂使用者控制項至文件。 第一個控制項會加入至 Range。 第二個控制項會加入特定位置中。 程式碼會變更第一個自訂使用者控制項的 Top 屬性,只會移動與包含文件中控制項 ControlSite 相關的控制項。 然後程式碼會設定第二個使用者控制項所傳回 ControlSiteTop 屬性,示範如何正確設定該控制項的 Top 屬性。

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

.NET Framework 安全性

請參閱

參考

ControlCollection 介面

AddControl 多載

Microsoft.Office.Tools.Word 命名空間