Ok, ich habe die Switch-Anweisung aus dem Code genommen.
Ich habe den Code jetzt wie foglt abgeändert:
Delphi-Quellcode:
procedure TForm1.KnotenErsetzen(Knoten: IXMLNode);
begin
Knoten.Attributes['
Nummer'] := ENummer.Text;
Knoten.Attributes['
Author'] := CBAuthor.Items[CBAuthor.ItemIndex];
Knoten.ChildValues['
Beschreibung'] := RBeschreibung.Text;
Knoten.ChildValues['
Befehl'] := RBefehl.Text;
//Einrücken und speichern im XML-Document
XMLDoc.Options := [doNodeAutoIndent];
XMLDoc.SaveToFile(XMLDoc.FileName);
end;
Den Konten ermittele ich duch eine Suche
Delphi-Quellcode:
//Suchen des Knotens mit der gleichen Nummer
for i := 0 to SQLDatei.Count-1 do
begin
knoten := SQLDatei.Nodes[i];
if (IntToStr(knoten.Attributes['Nummer']) = ENummer.Text) then
begin
Result := i; //Gefundenen Knoten zurückgeben
break;
end
else
Result := -1;//Kein Knoten gefunden
end;
KnotenErsetzen(SQLDatei.Nodes[Result])
Leider wurde mein geänderter Konten nicht in das
XML-Dokument geschrieben.