TcxGrid + TcxGridDBTableView- как зафиксировать некоторые столбцы слева?

ёёёёё
Дата: 21.08.2019 13:32:25
Добрый день.

Есть TcxGrid, в нем view: TcxGridDBTableView. Вопрос: как зафиксировать позицию самого левого столбца, чтобы столбец оставался виден про горизонтальном скролле?

Видел пример, когда вместо TcxGridDBTableView использовался TcxGridDBBandedTableView, там для фиксации столбцы помещаются в левый бэнд, и все. Имхо, как-то громоздко. Может, попроще как?
white_nigger
Дата: 21.08.2019 13:44:30
ёёёёё, эээ... и в чем громоздкость? Бэндвью - тот же тэйблвью по своей сути, с дополнительными возможностями, которые внезапно! предоставляет нужный тебе функционал
ёёёёё
Дата: 21.08.2019 14:32:29
white_nigger,

ну, ладно. Просто у меня был не-бэндед вью, тщательно настроенный. А понадобился новый функционал. И придется снова бродить по опциям и свойствам, чтобы все свойства вернуть взад.

Наверное, на будущее, лучше сразу брать бэндед*.
ёёёёё
Дата: 21.08.2019 14:59:03
white_nigger
ёёёёё, эээ... и в чем громоздкость? Бэндвью - тот же тэйблвью по своей сути, с дополнительными возможностями, которые внезапно! предоставляет нужный тебе функционал

Да, насчет кода по ссылке

Если делать так, как там:
 with TcxGridDBBandedTableView(AView).Bands.Add do  
 begin  
   Visible := False;  
   FixedKind := fkLeft;  
 end;  

- то все колонки, со свойством .Position.BandIndex, равным индексу такого бэнда, будут невидимы.

Для достижения задачи нужно лишь спрятать заголовок бэнда:
бэндед-вью.OptionsView.BandHeaders := False;


И так, создаем пару бэндов. Первому бэнду задем FixedKind := fkLeft;.
Потом колонкам, которые хотим "зафиксировать", назначаем .Position.BandIndex := 0 (индекс первого бэнда). Остальным назначаем ".Position.BandIndex := 1" (индекс второго бэнда).
white_nigger
Дата: 21.08.2019 19:10:29
ёёёёё
И придется снова бродить по опциям и свойствам, чтобы все свойства вернуть взад.
Используй копирование свойств из существующего вью. В дизайнере есть пункт.
ёёёёё
то все колонки, со свойством .Position.BandIndex, равным индексу такого бэнда, будут невидимы.
Передам саппорту - пусть проверят топик
ёёёёё
Дата: 21.08.2019 20:31:23
white_nigger,

спасибо.
DimaBr
Дата: 21.08.2019 21:04:56
ёёёёё
Просто у меня был не-бэндед вью, тщательно настроенный. А понадобился новый функционал. И придется снова бродить по опциям и свойствам, чтобы все свойства вернуть взад..

Открываешь DFM и меняешь TcxGridDBTableView на TcxGridDBBandedTableView и TcxGridDBColumn на TcxGridDBBandedColumn
Потом остаётся только растянуть по бендам