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

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


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

![IPropertyGrid](../resources/images_ipropertygrid.jpg)

Интерфейс элемента управления Панели свойств типа Сетка.
| |
| --- |
Элемент панели свойств
Иерархия:
IKompasAPIObject
IPropertyControl
IPropertyGrid
IPropertyToolBar
Примечание:
1. Данный интерфейс можно получить через коллекцию элементов управления Панели свойств IPropertyControls.
2. После создания элемента управления и вывода его на экран все изменения вносимые с помощью свойств и методов данного интерфейса вступят в силу только после вызова метода UpdateParam.
3. Для IPropertyGrid можно создавать панели команд. Для создания команд в IPropertyGrid добавлена поддержка интерфейса IPropertyToolBar. Этот дополнительный интерфейс вида можно получить у интерфейса IPropertyGrid посредством вызова метода IUnknown::QueryInterface (const GUID far& iid, void** pif).
4. Для IPropertyGrid поддерживаются события менеджера панели свойств ChangeControlValue, ControlCommand, SelectItem.


## AutoSizeColumns - Авторазмер колонок

Тип данных: BOOL
Синтаксис Automation:
```
AutoSizeColumns = iObject.AutoSizeColumns    Получить свойство (* )
iObject.AutoSizeColumns = AutoSizeColumns    Установить свойство (* )
AutoSizeColumns = iObject.GetAutoSizeColumns()    Получить свойство(**)
iObject.SetAutoSizeColumns (AutoSizeColumns)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_AutoSizeColumns (&AutoSizeColumns)    Получить свойство
iObject->put_AutoSizeColumns (AutoSizeColumns)    Установить свойство
Значение свойства:
TRUE    - расчет размера колонок от ширины элемента управления,
FALSE    - фиксированный размер колонок.
```
Примечание:
Ширина колонки определяется путем деления всей ширины элемента управления на количество колонок.


## BringIntoView - Подкрутка к строке

Синтаксис Automation:
```
void BringIntoView( long Index );
Синтаксис COM :
HRESULT BringIntoView( long Index );
Входные параметры:
index    - индекс строки.
Версия: Компас v20
```


## CellFormat - Формат вывода текста в ячейке

Тип данных: long
Синтаксис Automation:
```
CellFormat = iObject.CellFormat (nRow, nCol)    Получить свойство (* )
iObject.CellFormat (nRow, nCol) = CellFormat    Установить свойство (* )
CellFormat = iObject.GetCellFormat (nRow, nCol)    Получить свойство(**)
iObject.SetCellFormat (nRow, nCol, CellFormat)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_CellFormat (nRow, nCol, &CellFormat)    Получить свойство
iObject->put_CellFormat (nRow, nCol, CellFormat)    Установить свойство
Входные параметры:
nRow (long)    - индекс строки,
nCol (long)    - индекс колонки.
Значение свойства:
формат вывода текста в ячейке.
```
Примечание:
Формат вывода текста в ячейке задается стандартными значениями, используемыми в методе DrawText ОС Windows.


## CellText - Текст в ячейке

Тип данных: строка
Синтаксис Automation:
```
cllText = iObject.CellText (nRow, nCol)    Получить свойство (* )
iObject.CellText (nRow, nCol ) = CellText    Установить свойство (* )
CellText = iObject.GetCellText (nRow, nCol)    Получить свойство(**)
iObject.SetCellText (nRow, nCol, CellText)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_CellText (nRow, nCol, &CellText)    Получить свойство
iObject->put_CellText (nRow, nCol, CellText)    Установить свойство
Входные параметры:
nRow (long)    - индекс строки,
nCol (long)    - индекс колонки.
Значение свойства:
Текст в ячейке.
```
Примечание:
Позволяет получить/установить текст в ячейке.


## ColumnCount - Количество колонок

Тип данных: long.
Синтаксис Automation:
```
ColumnCount = iObject.ColumnCount    Получить свойство (* )
iObject.ColumnCount = ColumnCount    Установить свойство (* )
ColumnCount = iObject.GetColumnCount()    Получить свойство(**)
iObject.SetColumnCount (ColumnCount)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_ColumnCount (&ColumnCount)    Получить свойство
iObject->put_ColumnCount (ColumnCount)    Установить свойство
Значение свойства:
Общее количество колонок в сетке.
```


## ColumnVisible - Видимость колонки

Тип данных: BOOL
Синтаксис Automation:
```
ColumnVisible = Object.ColumnVisible( index )    Получить свойство (* )
Object.ColumnVisible( index ) = ColumnVisible    Установить свойство (* )
ColumnVisible = Object.GetColumnVisible( index )    Получить свойство(**)
Object.SetColumnVisible( index, ColumnVisible )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_ColumnVisible( index, &ColumnVisible )    Получить свойство
Object.put_ColumnVisible( index, ColumnVisible )    Установить свойство
Входные параметры:
index    - индекс колонки.
```


## ColumnWidth - Ширина колонки

Тип данных: long.
Синтаксис Automation:
```
ColumnWidth = iObject.ColumnWidth (index)    Получить свойство (* )
iObject.ColumnWidth (index) = ColumnWidth    Установить свойство (* )
ColumnWidth = iObject.GetColumnWidth (index)    Получить свойство(**)
iObject.SetColumnWidth (index, ColumnWidth)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_ColumnWidth (index, &ColumnWidth)    Получить свойство
iObject->put_ColumnWidth (index, ColumnWidth)    Установить свойство
Входные параметры:
index    - индекс колонки.
Значение свойства:
Ширина колонки с индексом index в сетке (в пикселах).
```


## CurrentColumn - Текущая колонка

Тип данных: long.
Синтаксис Automation:
```
CurrentColumn = iObject.CurrentColumn    Получить свойство (* )
iObject.CurrentColumn = CurrentColumn    Установить свойство (* )
CurrentColumn = iObject.GetCurrentColumn()    Получить свойство(**)
iObject.SetCurrentColumn(CurrentColumn)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_CurrentColumn(&CurrentColumn)    Получить свойство
iObject->put_CurrentColumn(CurrentColumn)    Установить свойство
```
Примечание:
Позволяет получить и установить текущую колонку для таблицы.


## CurrentRow - Текущая строка

Тип данных: long.
Синтаксис Automation:
```
CurrentRow = iObject.CurrentRow    Получить свойство (* )
iObject.CurrentRow = CurrentRow    Установить свойство (* )
CurrentRow = iObject.GetCurrentRow()    Получить свойство(**)
iObject.SetCurrentRow(CurrentRow)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_CurrentRow(&CurrentRow)    Получить свойство
iObject->put_CurrentRow(CurrentRow)    Установить свойство
```
Примечание:
Позволяет получить и установить текущую строку для таблицы.


## EnableDeleteRows - Разрешить удаление строк

Тип данных: BOOL
Синтаксис Automation:
```
EnableDeleteRows = Object.EnableDeleteRows    Получить свойство (* )
Object.EnableDeleteRows = EnableDeleteRows    Установить свойство (* )
EnableDeleteRows = Object.GetEnableDeleteRows()    Получить свойство(**)
Object.SetEnableDeleteRows( EnableDeleteRows )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_EnableDeleteRows( &EnableDeleteRows )    Получить свойство
Object.put_EnableDeleteRows( EnableDeleteRows )    Установить свойство
```


## EnableEdit - Запрет редактирования ячеек

Тип данных: BOOL.
Синтаксис Automation:
```
EnableEdit = Object.EnableEdit( NRow, NCol )    Получить свойство (* )
Object.EnableEdit( NRow, NCol ) = EnableEdit    Установить свойство (* )
EnableEdit = Object.GetEnableEdit( NRow, NCol )    Получить свойство(**)
Object.SetEnableEdit( NRow, NCol, EnableEdit )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_EnableEdit( NRow, NCol, &EnableEdit )    Получить свойство
Object.put_EnableEdit( NRow, NCol, EnableEdit )    Установить свойство
Входные параметры:
long NRow    - номер строки
long NCol    - номер столбца
```


## FixedColumnCount - Количество фиксированных колонок

Тип данных: long.
Синтаксис Automation:
```
FixedColumnCount = iObject.FixedColumnCount    Получить свойство (* )
iObject.FixedColumnCount = FixedColumnCount    Установить свойство (* )
FixedColumnCount = iObject.GetFixedColumnCount()    Получить свойство(**)
iObject.SetFixedColumnCount (FixedColumnCount)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_FixedColumnCount (&FixedColumnCount)    Получить свойство
iObject->put_FixedColumnCount (FixedColumnCount)    Установить свойство
Значение свойства:
Количество фиксированных колонок в сетке.
```


## FixedRowCount - Количество фиксированных строк

Тип данных: long.
Синтаксис Automation:
```
FixedRowCount = iObject.FixedRowCount    Получить свойство (* )
iObject.FixedColumnCount = FixedColumnCount    Установить свойство (* )
FixedColumnCount = iObject.GetFixedColumnCount()    Получить свойство(**)
iObject.SetFixedColumnCount (FixedColumnCount)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_FixedColumnCount (&FixedColumnCount)    Получить свойство
iObject->put_FixedColumnCount (FixedColumnCount)    Установить свойство
Значение свойства:
Количество фиксированных строк в сетке.
```


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

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


## IsRowSelected - Признак выбранной строки

Тип данных: BOOL
Синтаксис Automation:
```
IsRowSelected = Object.IsRowSelected( Index )    Получить свойство (* )
Object.IsRowSelected( Index ) = IsRowSelected    Установить свойство (* )
IsRowSelected = Object.GetIsRowSelected( Index )    Получить свойство(**)
Object.SetIsRowSelected( Index, IsRowSelected )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_IsRowSelected( Index, &IsRowSelected )    Получить свойство
Object.put_IsRowSelected( Index, IsRowSelected )    Установить свойство
Входные параметры:
long    - Index - индекс строки.
КOMPAS v24
```


## MultiSelect - Разрешить множественный выбор строк сетки

Тип данных: BOOL
Синтаксис Automation:
```
MultiSelect = Object.MultiSelect    Получить свойство (* )
Object.MultiSelect = MultiSelect    Установить свойство (* )
MultiSelect = Object.GetMultiSelect()    Получить свойство(**)
Object.SetMultiSelect( MultiSelect )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_MultiSelect( &MultiSelect )    Получить свойство
Object.put_MultiSelect( MultiSelect )    Установить свойство
КOMPAS v24
```


## ReadOnly - Запрет редактирования таблицы

Тип данных: BOOL
Синтаксис Automation:
```
ReadOnly = iObject.ReadOnly    Получить свойство (* )
iObject.ReadOnly = ReadOnly    Установить свойство (* )
ReadOnly = iObject.GetReadOnly()    Получить свойство(**)
iObject.SetReadOnly (ReadOnly)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_ReadOnly (&ReadOnly)    Получить свойство
iObject->put_ReadOnly (ReadOnly)    Установить свойство
Значение свойства:
TRUE    - редактирование ячеек запрещено,
FALSE    - не реализовано.
```
Примечание:
Временно сетка работает только в режиме Только для чтения. Редактирование ее ячеек запрещено.


## RowCount - Количество строк

Тип данных: long
Синтаксис Automation:
```
RowCount = iObject.RowCount    Получить свойство (* )
iObject.RowCount = RowCount    Установить свойство (* )
RowCount = iObject.GetRowCount()    Получить свойство(**)
iObject.SetRowCount (RowCount)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_RowCount (&RowCount)    Получить свойство
iObject->put_RowCount (RowCount)    Установить свойство
Значение свойства:
Общее количество строк в сетке.
```


## RowHeight - Высота строки

Тип данных: long
Синтаксис Automation:
```
RowHeight = iObject.RowHeight (index)    Получить свойство (* )
iObject.RowHeight (index) = RowHeight    Установить свойство (* )
RowHeight = iObject.GetRowHeight (index)    Получить свойство(**)
iObject.SetRowHeight (index, RowHeightr)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_RowHeight (index, &RowHeight)    Получить свойство
iObject->put_RowHeight (index, RowHeight)    Установить свойство
Входные параметры:
index    - индекс строки.
Значение свойства:
Высота строки с индексом index в сетке (в пикселах).
```


## SelectedRows - Выбранные строки сетки

Тип данных: VARIANT
Синтаксис Automation:
```
SelectedRows = Object.SelectedRows    Получить свойство (* )
Object.SelectedRows = SelectedRows    Установить свойство (* )
SelectedRows = Object.GetSelectedRows()    Получить свойство(**)
Object.SetSelectedRows( SelectedRows )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_SelectedRows( &SelectedRows )    Получить свойство
Object.put_SelectedRows( SelectedRows )    Установить свойство
КOMPAS v24
```


## UpdateParam - Обновить параметры сетки

Синтаксис Automation:
```
void UpdateParam();
```
Синтаксис COM:
```
HRESULT UpdateParam();
```
Примечание:
Все изменения в сетке вступят в силу только после вызова этого метода.


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

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