cxGrid selection - избегайте выбора одного конкретного столбца

Когда вы выбираете строку в cxGrid, выделяется вся строка (меняет цвет на синий). Как я могу сказать сетке не выбирать записи из определенного столбца, то есть оставить его бесцветным? Я попытался использовать афтерскролл набора данных:

cxGrid1dbTableView1.GetColumnByFieldName('MYFIELD').Focused := True;

Но не работает.....

1 ответ

Использовать OnCustomDrawCell Событие столбцов, которые вы хотите изменить и поместить этот код внутри:

if AViewInfo.Selected then
begin
  ACanvas.Brush.Color := clWindow;
  ACanvas.Font.Color := clWindowText;
end;

В моем случае я не использую темы, поэтому цвета совпадают. Если вы используете что-то другое, вы должны изменить их соответственно.

Другие вопросы по тегам