ControlCollection.AddControl Метод (Control, Range, String) (2007 System)
Обновлен: Ноябрь 2007
Добавляет определенный Control в ControlCollection в определенном диапазоне.
Пространство имен: Microsoft.Office.Tools.Excel
Сборка: Microsoft.Office.Tools.Excel.v9.0 (в Microsoft.Office.Tools.Excel.v9.0.dll)
Синтаксис
'Декларация
Public Function AddControl ( _
control As Control, _
range As Range, _
name As String _
) As OLEObject
'Применение
Dim instance As ControlCollection
Dim control As Control
Dim range As Range
Dim name As String
Dim returnValue As OLEObject
returnValue = instance.AddControl(control, _
range, name)
public OLEObject AddControl(
Control control,
Range range,
string name
)
Параметры
- control
Тип: System.Windows.Forms.Control
Элемент управления, добавляемый в экземпляр ControlCollection.
- range
Тип: Microsoft.Office.Interop.Excel.Range
Объект Range, предоставляющий границы элемента управления.
- name
Тип: System.String
Имя элемента управления, которое можно использовать для индексации элемента управления в экземпляре ControlCollection.
Возвращаемое значение
Тип: Microsoft.Office.Tools.Excel.OLEObject
Экземпляр класса OLEObject, представляющий созданный для элемента управления контейнер.
Исключения
Исключение | Условие |
---|---|
ArgumentNullException | Аргумент элемента управления, имени или диапазона равен nullссылка null (Nothing в Visual Basic), или аргумент имени имеет нулевую длину. |
ControlNameAlreadyExistsException | Элемент управления с таким именем уже имеется в данном экземпляре ControlCollection. |
InvalidRangeException | Указанный диапазон не существует. Невозможно использовать диапазоны с несколькими областями. Диапазон должен находиться на том же листе, что и экземпляр ControlCollection. |
Заметки
Этот метод используется для добавления любого элемента управления в коллекцию ControlCollection во время выполнения. Дополнительные сведения см. в разделе Добавление элементов управления в документы Office во время выполнения.
Примеры
В приведенном ниже примере кода с помощью метода AddControl на лист добавляются два настраиваемых пользовательских элемента управления. Первый элемент управления добавляется в диапазон ячеек. Второй элемент управления добавляется в указанное расположение. В коде изменяется свойство Top первого настраиваемого пользовательского элемента управления, что приводит к перемещению элемента управления относительно объекта OLEObject, в котором содержится элемент управления на листе. Затем в коде свойству Top присваивается значение объекта OLEObject, возвращенного вторым пользовательским элементом управления с целью демонстрации правильного способа задания свойства Top элемента управления.
Private Sub ExcelRangeAddControl()
Dim CustomUserControl As New UserControl1()
Dim CustomUserControl2 As New UserControl2()
Dim DynamicControl As Microsoft.Office.Tools.Excel. _
OLEObject = Me.Controls.AddControl( _
customUserControl, 0, 0, 150, 150, _
"DynamicControl")
Dim DynamicControl2 As Microsoft.Office.Tools.Excel. _
OLEObject = 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.OLEObject dynamicControl =
this.Controls.AddControl(customUserControl,
0, 0, 150, 150, "dynamicControl");
Microsoft.Office.Tools.Excel.OLEObject dynamicControl2 =
this.Controls.AddControl(customUserControl2, 200, 0,
150, 150, "dynamicControl2");
customUserControl.BackColor = Color.Blue;
customUserControl2.BackColor = Color.Green;
customUserControl.Top = 100;
dynamicControl2.Top = 100;
}
Разрешения
- Полное доверие для непосредственно вызывающего метода. Этот член не может быть использован частично доверенным кодом. Дополнительные сведения см. в разделе Использование библиотек из не вполне надежного кода.