Einzelnen Beitrag anzeigen

Dawn87

Registriert seit: 15. Feb 2007
Ort: Lüdenscheid
189 Beiträge
 
Delphi XE5 Professional
 
#3

Re: Serialisierung von TCollection mit TXMLSerializer

  Alt 1. Jul 2009, 17:10
Hallo!

Das war die entscheidene Information die mir fehlte: Die von mir verwendete Klasse hat natürlich Events! Habe das ganze nun erstmal provisorisch zum laufen bekommen und beschäfte mich gleich noch ein wenig damit:

Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var
  coStore: TStorageItem;
  i: Integer;
begin
  coTest := TStorage.Create(TStorageItem);

  with TXMLSerializer.Create(self) do
  begin
    XMLSettings.WellFormated := true;

    SpecialClasses := [scTCollection];

    LoadFromFile('C:\test.xml');

    OnStartObjectLoad := Deserialize;

    LoadObject(coTest, 'Test');
  end;

  ListBox1.Clear;

  for i := 0 to coTest.Count - 1 do
  begin
    ListBox1.AddItem(coTest.Items[i].Text, nil);
  end;
end;
Delphi-Quellcode:
procedure TForm1.Deserialize(aSender, aObject: TObject; aObjectName: string;
  aNode: IXMLNode; var aSkipObject: boolean);
var
  i: Integer;
begin
  for i := 0 to aNode.ChildNodes.Nodes['customdata'].ChildNodes.count - 1 do
  begin
    coTest.Add;
  end;
end;
  Mit Zitat antworten Zitat