按照指定的位置和大小将指定的 Control 添加到 ControlCollection。
命名空间: Microsoft.Office.Tools.Excel
程序集: Microsoft.Office.Tools.Excel(在 Microsoft.Office.Tools.Excel.dll 中)
Microsoft.Office.Tools.Excel.v4.0.Utilities(在 Microsoft.Office.Tools.Excel.v4.0.Utilities.dll 中)
语法
声明
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
)
参数
- control
类型:System.Windows.Forms.Control
要添加到 ControlCollection 实例的控件。
- left
类型:System.Double
控件左边缘与工作表左边缘之间的距离(以磅为单位)。
- top
类型:System.Double
控件上边缘与工作表上边缘之间的距离(以磅为单位)。
- width
类型:System.Double
控件的宽度(以磅为单位)。
- height
类型:System.Double
控件的高度(以磅为单位)。
- name
类型:System.String
控件的名称。
返回值
类型:Microsoft.Office.Tools.Excel.ControlSite
一个表示控件的对象,它包含工作表中的指定控件。
异常
| 异常 | 条件 |
|---|---|
| ArgumentNullException | 控件参数或名称参数为 nullnull 引用(在 Visual Basic 中为 Nothing) 或长度为零。 |
| ControlNameAlreadyExistsException | ControlCollection 实例中已存在一个同名控件。 |
备注
此方法可用于在运行时向 ControlCollection 添加任何控件。有关更多信息,请参见在运行时向 Office 文档添加控件。
示例
下面的代码示例使用 AddControl 方法将两个自定义用户控件添加到工作表。第一个控件添加到一组单元格。第二个控件被添加到特定的位置。代码更改第一个自定义用户控件的 Top 属性,此属性仅相对于工作表上包含该控件的 ControlSite 移动该控件。然后,此代码设置由第二个用户控件返回的 ControlSite 对象的 Top 属性,以说明设置该控件的 Top 属性的正确方法。
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;
}
.NET Framework 安全性
- 对直接调用方的完全信任。此成员不能由部分信任的代码使用。有关更多信息,请参见通过部分受信任的代码使用库。