Einzelnen Beitrag anzeigen

Akut-Programming

Registriert seit: 18. Aug 2003
648 Beiträge
 
#12

Re: In XML löschen und weitere Einträge aktualisieren

  Alt 14. Okt 2003, 18:06
Also hab jetzt n bissl rum probiert..immer noch nichts. Wollts wie von phlux vorgeschlagen machen. Nur wenn ich das Speichern und ListUpdaten erst zum Schluss mache - was ja auch Sin ergibt, Stresst er wegen dem SelectedNode rum. Poste mal meinen umgestellten Code - So funztz zwar aber immer nur wenn maximal 2 Einträge im XML bzw. ListView sind (Das eigentliche Problem).
Delphi-Quellcode:
procedure Tfrm_terminplaner.Image2Click(Sender: TObject);
var
  node, parentnode: IXMLDOMNode;
  id,id2,i,i2: integer;
begin
  i:=lv_eintraege.Selected.Index;
  id:=StrToInt(lv_eintraege.Items[i].Caption);
  node :=xmlDoc.selectSingleNode('/PlanView/termin[terminid="'+IntToStr(id)+'"]');
  parentnode := node.parentNode;
  parentnode.removeChild(node);
  xmlDoc.save(frm_terminplaner.instpath + xmlfilename); // Dies einfach mal wegdenken, wäre dann Phluxs Vorschlag
  frm_terminplaner.UpdateList; // -||-
  for i2:=1 to lv_eintraege.Items.Count-1
  do begin
    id:=StrToInt(lv_eintraege.Items[i].Caption);
    node := xmlDoc.documentElement.selectSingleNode('/PlanView/termin[terminid="'+IntToStr(id)+'"]');
    node.selectSingleNode('terminid').text:=IntToStr(id);
  end;
  xmlDoc.save(frm_terminplaner.instpath + xmlfilename);
  status_03.Caption:='Der Termin wurde erfolgreich gelöscht!';
  Timer1.Enabled:=true;
  frm_terminplaner.UpdateList;

  Label2.Caption:='erfasste Termine ('+IntToStr(lv_eintraege.Items.Count)+')';
end;
Akut-Programming
be cool, be hot ... just be
  Mit Zitat antworten Zitat