ControlCollection.AddControl 方法 (Control, Double, Double, Double, Double, String)
按照指定的位置和大小将指定的 Control 添加到 ControlCollection。
命名空间: Microsoft.Office.Tools.Excel
程序集: Microsoft.Office.Tools.Excel(在 Microsoft.Office.Tools.Excel.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 安全性
- 对直接调用方的完全信任。此成员不能由部分信任的代码使用。有关更多信息,请参见通过部分受信任的代码使用库。