---
title: "Интерфейс IPropertyUserControl"
type: interface
api: [api7]
tags: [interface, api7, ipropertyusercontrol]
sources:
  - ipropertyusercontrol.html
---

*API интерфейсов. Версия 7 > Приложение > Работа с Панелью свойств  > Интерфейс IPropertyControl  > IPropertyControl - свойства *


## Интерфейс IPropertyUserControl

События...
Интерфейс элемента управления Панели свойств Пользовательский элемент управления.
Иерархия:
IKompasAPIObject
IPropertyControl
IPropertyUserControl
Данный элемент управления позволяет отображать на Панели свойств нестандартные элементы управления и их наборы. В качестве вложенного нестандартного элемента управления используется элемент управления OCX. Используемый элемент управления OCX должен быть зарегистрирован в реестре Windows.
После создания элемента управления OCX библиотеке посылается событие ksPropertyUserControlNotify::CreateOCX. В этом событии передается Dispatch-интерфейс элемента управления OCX и библиотека может подписаться на события от этого элемента управления.
Перед удалением элемента управления OCX библиотеке посылается событие ksPropertyUserControlNotify::DestroyOCX. При обработке этого события библиотека должна отписаться от событий этого элемента управления.
Примечание:
Данный интерфейс можно получить через коллекцию элементов управления Панели свойств IPropertyControls.


## AutoSize - Автоматический расчет высоты контрола. TRUE - Растягивать на всю доступную область

Тип данных: BOOL
Синтаксис Automation:
```
AutoSize = Object.AutoSize    Получить свойство (* )
Object.AutoSize = AutoSize    Установить свойство (* )
AutoSize = Object.GetAutoSize()    Получить свойство(**)
Object.SetAutoSize( AutoSize )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_AutoSize( &AutoSize )    Получить свойство
Object.put_AutoSize( AutoSize )    Установить свойство
```


## FixHeight - Зафиксировать высоту элемента управления

Тип данных: BOOL
Синтаксис Automation:
```
FixHeight = iObject.FixHeight    Получить свойство (* )
iObject.FixHeight = FixHeight    Установить свойство (* )
FixHeight = iObject.GetFixHeight()    Получить свойство(**)
iObject.SetFixHeight(FixHeight)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_FixHeight(&FixHeight)    Получить свойство
iObject->put_FixHeight(FixHeight)    Установить свойство
Значение свойства:
TRUE - размер элемента управления по высоте зафиксирован и равен значению, установленному в свойстве Height - Высота элемента управления.
```
Примечание:
По умолчанию свойство имеет значение FALSE - размер элемента управления по высоте не зафиксирован.


## FixWidth - Зафиксировать ширину элемента управления

Тип данных: BOOL
Синтаксис Automation:
```
FixWidth = iObject.FixWidth    Получить свойство (* )
iObject.FixWidth = FixWidth    Установить свойство (* )
FixWidth = iObject.GetFixWidth()    Получить свойство(**)
iObject.SetFixWidth(FixWidth)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_FixWidth(&FixWidth)    Получить свойство
iObject->put_FixWidth(FixWidth)    Установить свойство
Значение свойства:
TRUE - размер элемента управления по ширине зафиксирован и равен значению, установленному в свойстве Width - Ширина элемента управления.
```
Примечание:
По умолчанию свойство имеет значение FALSE - размер элемента управления по ширине не зафиксирован. Свойство работает при горизонтальном размещении Панели свойств.


## Height - Высота элемента управления

Тип данных: long.
Синтаксис Automation:
```
Height = iObject.Height    Получить свойство (* )
iObject.Height = Height    Установить свойство (* )
Height = iObject.GetHeight()    Получить свойство(**)
iObject.SetHeight (Height)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Height (&Height)    Получить свойство
iObject->put_Height (Height)    Установить свойство
Значение свойства:
Высота элемента управления в пикселах.
```


## SetOCXControl - Установить progID элемента управления OCX

Синтаксис Automation:
```
void SetOCXControl (LPCTSTR progID);
```
Синтаксис COM:
```
HRESULT SetOCXControl ([in] BSTR progID);
Входные параметры:
progID    - строка progID элемента управления OCX.
```
Примечание:
OCX контрол должен быть зарегистрирован в реестре Windows.


## Width - Ширина элемента управления

Тип данных: long.
Синтаксис Automation:
```
Width = iObject.Width    Получить свойство (* )
iObject.Width = Width    Установить свойство (* )
Width = iObject.GetWidth()    Получить свойство(**)
iObject.SetWidth (Width)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Width (&Width)    Получить свойство
iObject->put_Width (Width)    Установить свойство
Значение свойства:
Ширина элемента управления в пикселах.
```
Примечание:
Используется только для Панели свойств в горизонтальном положении. В вертикальном - определяется шириной самой Панели свойств.
