Du solltest dieses Problem melden.
Als Workaround schlage ich dir vor, die Kinder selber neu zu malen.
Zum Beispiel so:
Delphi-Quellcode:
procedure RepaintChildren(Parent: TWinControl);
var
i: Integer;
Child: TControl;
begin
for i := 0 to Parent.ControlCount-1 do
begin
Child := Parent.Controls[i];
if Child is TWinControl then
begin
Child.Repaint;
RepaintChildren(TWinControl(Child));
end;
end;
end;
Aufruf:
Auf die Ereignisse OnCollapse und OnExpand von cpSprache reagierst du mit NeuMalen aller Kinder und Kindeskinder von CategoryPanelGroup1. (CategoryPanelGroup1.Repaint oder Panel2.Repaint funktionieren nicht, da du damit wieder in den programmierten Mist reingerätst.)
Delphi-Quellcode:
procedure TForm3.cpSprache2Expand(Sender: TObject);
begin
RepaintChildren(CategoryPanelGroup1);
end;