AdvAppStyler and DBAdvEdit issue on change

Delphi 10.4.2 Enterprise

I have an application with a large number of TDBAdvEdit controls with manually set colours.

In previous version of VCL UI pack, changing the theme did not affect my manually set DBAdvEdit.color setting (I don't know what "previous version" as I haven't had to work on this project for about 10 months).

With the current version of VCL UI pack, when the user selects a new theme, all the DBAdvEdit controls appear to reset color to clWindow.

That is, at startup the program displays something like:

And immediately after the user changes the style:

The red edit box has been painted based on the OnValueValidate method (but it was clWhite immediately after the Style change - it only went "red" upon entering the field again).

Is this behaviour as designed/expected?

That is, I would expect my manual colour choices to be maintained even after a style change (they might not look great against the new Style, but these edit colours much match a customer guideline).

Is there a simple way to go back to the previous behaviour (don't touch the DBAdvEdit.color value), or am I going to have to detect the "onchange" for the style and reset the colours myself?



So, I guess there is a TAdvFormStyler on this form?

If so, if you do not want the style to be applied, use:

procedure TForm1.AdvFormStyler1ApplyStyle(Sender: TObject;
  AComponent: TComponent; var Allow: Boolean);
  Allow := not (AComponent is TAdvEdit);

The TAdvFormStyler is on a base form, but yes - and that worked - thanks Bruno!