Moin,
sieht nicht alzu gut aus. ListColumns wird im konstruktor von TCustomListView erzeugt und offensichtlich wurde es nicht vorgesehen diese klasse alternieren zu können. Ein erstören des alten objekts und neuinstanzieren kommt IMO auch nicht in frage, da der setter der ListColumns-property nur einen assign-code, für das bestehende objekt, implementiert.
Delphi-Quellcode:
constructor TCustomListView.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
...
FListColumns := TListColumns.Create(Self);
...
end;
Bei den listItems hättest du eher glück, da diese durch eine virtuelle fabrik-methode erzeugt werden:
Delphi-Quellcode:
function CreateListItem: TListItem; virtual;
function CreateListItems: TListItems; virtual;
Mehr kann ich da nicht tun
mâxîmôv.
{KDT}