2014-05-12 2 views
3

많은 행과 많은 좁은 열이있는 큰 그리드가 있습니다. 나는 현재 행을 강조 표시하는 것과 같은 방법으로 현재 열을 강조 표시하여 어떤 열을 선택했는지 쉽게 확인하려고합니다.ExpressQuantumGrid에서 선택된 셀의 '십자형'강조 표시

은 내가 GetContentStyle 이벤트를 사용했지만, 단지 선택된 행이 다시 칠 것 같다, 그래서 위대한 ...

는 사람이 선택된 열을 강조하는 방법을 생각을해야합니까 작동하지 않았다 ExpressQuantumGrid?

답변

1

해결 방법은 포커스가 열 사이에서 이동할 때마다 강제로 다시 칠하는 것입니다. 이것은 이 아닙니다 제가 좋아하는 해결책은 ... 적어도 관련 열만을 무효화 할 수 있어야합니다 ....

procedure TForm1.gridViewStylesGetContentStyle(
    Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; 
    AItem: TcxCustomGridTableItem; var AStyle: TcxStyle); 
begin 
    if (AItem is TcxGridBandedColumn) and 
    (Sender.Controller.FocusedItem = AItem) then 
    begin 
    AStyle := DataManager.cxStyleSelected 
    end; 
end; 

procedure TForm1.gridViewByGoalFocusedItemChanged(
    Sender: TcxCustomGridTableView; APrevFocusedItem, 
    AFocusedItem: TcxCustomGridTableItem); 
begin 
    Sender.Invalidate(true); 
end;