Колонка DBGrid-а подключена к Currensy-полю таблицы. Если значение этого поля не равно нулю - нужно выводить его в вормате "# ##0.00", если же значение нулевое - ничего не должно выводиться в ячейке.
На данный момент решил так:
procedure TForm1.Table1Field1GetText(Sender: TField; var Text: String; DisplayText: Boolean);
begin
if DisplayText then
begin
if (Sender as TField).AsCurrency<>0
then Text:=trim(format('%15.2f', [(Sender as TField).AsCurrency]))
else Text:='';
end;
end;
Получается то что нужно. Но... Для того, что бы воспользоваться этим способом, предварительно я должен создать TCurrencyField для этого поля, а прицепом и для всех остальных полей датасета. В моем случае это не очень удобно, т.к. все это в некоторой универсальной форме, в которой заранее неизвестно с каким датасетом будем работать.
Существуют ли другие решения этой задачи?