Определяет, может ли выделяться отдельная Клетка (ячейка) в Контроле Grid, например, вы можете использовать рассматриваемое свойство AllowCellSelection для реализации отображения Данных в Контроле Grid, как в Контроле ListBox. Доступно для чтения и изменения в режимах Design-Time / Run-Time.
Grid.AllowCellSelection [= lExpr] |
Возвращаемое
значение
- lExpr
-
Параметр определяет способ выделения элемента данных: или текущую Клетку Grid, или всю текущую строку данного Контрола Grid.
Далее приводится описание возможных значений данного параметра lExpr.
lExpr Краткое Описание True (.T.)
Определяет, что в текущий момент выделяется Клетка Grid-а (Поле Таблицы). (По-умолчанию)
False (.F.)
Определяет, что выделяется вся текущая строка Таблицы (как в контроле ListBox).
Комментарии
Применяется В: Grid, контрол
Выделение индивидуальной Клетки или всей текущей строки Таблицы не изменяет Цвет выделения строки или Клетки.
В том случае, когда выполнена установка AllowCellSelection = False (.F.) (Вся Строка), существуют следующие Особенности:
-
Контрол Grid игнорирует значения свойств SelectedItemForeColor, SelectedItemBackColor. Текущая строка подсвечивается с помощью Цветовых схем из свойств HighlightBackColor, HighlightForeColor и может определяться другими характеристиками и свойствами объектов уровня Column (Столбец).
Обратите Внимание
Если вы не используете специфических значений Свойств выделения (подсветки), то вокруг текущей строки появляется специальная Рамка Выделения.
-
Если для свойства HighlightStyle установлено значение > 0, то, по-умолчанию, для свойства HighlightBackColorустанавливается значение = 50 процентов светлее базового цвета выделения (в полтора раза светлее, умноженное на коэффитциент = 1.5).
-
Контрол всегда отображает указатель мышки, заданный в свойстве MousePointer, и не выполняет переход в режим редактирования текущей Клетки. При выполнении Клика в требуемой клетке - выделяется вся текущая Строка Таблицы (вместо установки Фокуса в отдельную Клетку).
-
Табуляция (перемещение по Столбцам) в этом случае не работает, Контрол Grid ведет себя так, как будто имеет один Моно-столбец (точнее - типа ListBox).
-
Вы сможете также удалить текущую Строку (пометить на удаление), данный механизм также Отключен в рассматриваемом Режиме.
-
Скрытые Стобцы Игнорируются. Для скролинга Столбцов слева или справа рекомендуется использовать клавиши-стрелки LEFT ARROW / RIGHT ARROW или горизонтальную линейку Скролинга контрола Grid.
-
Значение свойства ctiveColumn вычисляется как = 0; рекомендуется использовать значение свойства RelativeColumn - для определения значения Столбца в Grid-е.
-
Метод ActivateCell просто выделяет текущую Строку Таблицы.
-
Все соответствующие события конкретных Контролов переопределяются на события самого Контрола Grid. Например, опрация "double-clicking" для Клетки переадртсуется в событие Grid.DblClick. Тем не менееr, события Заголовков Header и другие Атрибуты поддерживаются. Например, вы можете выполнять Клик для Заголовка Столбца, чтобы переопределить текущий режим Сортировки (если такой функционал вами поддерживается).
-
Поддержка режима поиска Find - отключается, это объясняется тем, что при использовании рассматриваемого значения свойства AllowCellSelection Контрол Grid переходит в специфический режим "Только-Чтение". Однако, данное свойство AllowCellSelection не влияет на работу Столбца пометки Записей Таблицы "на Удаление", (он по-прежнему отображается).
-
События AfterRowColChange и BeforeRowColChange работают только при изменении позиции Строк Таблицы. Значение свойства RowColChange всегда = 1 (Изменяется Строка).
Свойство AllowCellSelection поддерживает Все стандартные Контролы Visual FoxPro, которые помещены в Столбец-контейнер; однако, внедренные в Столбец внешние Контролы типа ActiveX не поддерживаются (имеется ввиду: запрет выделения Клетки, примечание переводчика).
Если значение свойства AllowCellSelection = True (.T.), Visual FoxPro игнорирует срабатывание события Grid.KeyPress и использует программный Код для соответствующего события конкретной Клетки (Ячейки), в которой сработало это Событие .