This code works fine with an IDE generated form in a VCL Forms Application:
Self.ParentBackground := True;
But why? None of the ascendants (TForm, TCustomForm, TScrollingWinControl) publish the protected ParentBackground property of TWinControl. The type declaration for the form (f.i. 'TForm1') at the top of the unit, does not either. Indeed, as expected, this
TForm(Self).ParentBackground := True;
does not compile ("Cannot access protected symbol TWinControl.ParentBackground"). Same with any form created at runtime.
Note: The question is not about how can I set the property (BTW, there are others, like 'Bevel[xxx]'), I'd like to know how does this work.