Mudar a cor de um DBEdit dentro de um DBCtrlGrid de acordo com uma condição no Delphi
Problema:

Uso um DBCtrlGrid e gostaria que, quando o valor de um 
determinado campo for negativo, o DBEdit ligado a este 
campo seja exibido em vermelho e, caso contrário, 
em azul. Isto é possível?



Solução:

- Monte o form normalmente colocando DataSource, Table, 
  DBCtrlGrid e os DBEdit's, DBText's, etc.

- Escreva no manipulador do evento OnPaintPanel do 
  DBCtrlGrid conforme abaixo:

procedure TForm1.DBCtrlGrid1PaintPanel(DBCtrlGrid: TDBCtrlGrid;
  Index: Integer);
begin
  if Table.FieldByName('NomeDoCampo').AsFloat < 0 then
    DBEdit1.Font.Color := clRed
  else
    DBEdit1.Font.Color := clBlue;
end;

Observações

Neste exemplo mudamos a cor da fonte do componente DBEdit, Porém, pode-se também mudar a cor do próprio componente (DBEdit1.Color).