ControlCollection.AddControl 方法 (Control, Range, Single, Single, String)
在指定范围内以指定大小向 ControlCollection 添加指定控件。
命名空间: Microsoft.Office.Tools.Word
程序集: Microsoft.Office.Tools.Word(在 Microsoft.Office.Tools.Word.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
)
参数
- control
类型:System.Windows.Forms.Control
要添加到 ControlCollection 实例的控件。
- range
类型:Microsoft.Office.Interop.Word.Range
提供控件的位置的 Range。
- width
类型:System.Single
控件的宽度(以磅为单位)。
- height
类型:System.Single
控件的高度(以磅为单位)。
- name
类型:System.String
可用于索引 ControlCollection 实例中控件的名称。
返回值
类型:Microsoft.Office.Tools.Word.ControlSite
一个对象,表示包含文档中指定控件的控件。
异常
异常 | 条件 |
---|---|
ArgumentNullException | control、name 或 range 参数为 nullnull 引用(在 Visual Basic 中为 Nothing),或者 name 参数长度为零。 |
ControlNameAlreadyExistsException | ControlCollection 实例中已存在一个同名控件。 |
InvalidRangeException | 指定的范围无效。 |
备注
此方法可用于在运行时向 ControlCollection 添加任何控件。 有关更多信息,请参见 在运行时向 Office 文档添加控件。
示例
下面的代码示例使用 AddControl 方法向文档添加两个自定义用户控件。 第一个控件被添加到 Range 中。 第二个控件被添加到特定的位置。 此代码更改第一个自定义用户控件的 Top 属性,这只是相对于文档上包含此控件的 ControlSite 来移动该控件。 然后,此代码设置由第二个用户控件返回的 ControlSite 对象的 Top 属性,以说明设置该控件的 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 安全性
- 对直接调用方的完全信任。此成员不能由部分信任的代码使用。有关更多信息,请参见通过部分受信任的代码使用库。