Delphi Sources

Свойство TStringList



Автор: Mike Orriss

Вам необходимо определять поле как TStrings, а не как TStringList - ловушка, в которую, подразумеваю, попадал не я один!

Следующий пример показывает подход, необходимый для создания свойства, имеющего тип TStringList:


private
  FList: TStrings;

protected
  procedure SetList(Value: TStrings);
published
  property List: TStrings read FList write SetList;

...

constructor Txxxxx.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);
  FList := TStringList.Create;
end;

destructor Txxxxx.Destroy;
begin
  FList.Free;
  inherited Destroy;
end;

procedure Txxxxx.SetList(Value: TStrings);
begin
  FList.Assign(Value);
end;