I suggest using OnSelectEditor event:
procedure TForm1.StringGrid1SelectEditor(Sender: TObject; aCol, aRow: Integer;
var Editor: TWinControl);
begin
if (Editor is TStringCellEditor) then
begin
TStringCellEditor(Editor).Font.Color:=clRed;
TStringCellEditor(Editor).Color:=clYellow;
end
else if (Editor is TPickListCellEditor) then
begin
TPickListCellEditor(Editor).Font.Color:=clBlue;
TPickListCellEditor(Editor).Color:=clYellow;
end;
end;