TcxCustomVerticalGrid.OnDrawValue Event
Occurs before painting row cell values.
Declaration
property OnDrawValue: TcxVerticalGridDrawValueEvent read; write;
Remarks
The OnDrawValue event is fired when grid row cell values need repainting.
The Sender parameter specifies the vertical grid to which the row belongs.
The ACanvas parameter specifies the surface being painted.
The APainter parameter provides access to the painter object used for default painting. You can use the interface provided by the object to paint the cell value using the current style settings.
The AValueInfo parameter returns ViewInfo information required to render the current cell value.
The Done parameter specifies whether the default painting routines should be suppressed. Set the parameter to True, to cancel default painting; set it to False, to allow default painting. In the latter case, the changes you make will be discarded.
The following code shows an OnDrawValue event handler that displays HP row values greater than 300 in red:
procedure TStylesSimpleDemoMainForm.cxDBVerticalGridDrawValue(
Sender: TObject; ACanvas: TcxCanvas; APainter: TcxvgPainter;
AValueInfo: TcxRowValueInfo; var Done: Boolean);
begin
if (TcxEditorRow(AValueInfo.Row).Properties.Caption = 'HP') and (cxDBVerticalGridHP.Properties.Values[AValueInfo.RecordIndex] > 300) then
begin
ACanvas.Brush.Color := AValueInfo.ViewParams.Color;
ACanvas.FillRect(AValueInfo.VisibleRect);
ACanvas.Font.Color := clRed;
ACanvas.Font.Style := [fsBold];
ACanvas.DrawText(TcxCustomTextEditViewInfo(AValueInfo.EditViewInfo).Text, AValueInfo.BoundsRect, 0);
Done := True;
end;
end;
