DataTable Änderungen Schritt für Schritt rückgängig machen ?

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von HerrFrie.

    DataTable Änderungen Schritt für Schritt rückgängig machen ?

    Hallo Leute,

    ich habe eine DataTable, in der ich eine Chronik anzeigen lasse/drinn stehen habe. Das Ganze wird mir über ein DGV angezeigt.
    Jetzt habe ich ja die Möglichkeit, alle Änderungen mit .AcceptChanges zu übernehmen oder alle Änderungen mit .RejectChanges rückgängig zu machen.

    Gibt es auch eine Möglichkeit, jede einzelne Änderung durch einen Rückgängig Button Stück für Stück rückgängig zu machen ?
    So wie es in den meißten Programmen auch möglich ist ?
    Es wäre natürlich toll, wenn der Aufwand dafür nicht zu groß wäre.

    Gruß
    HerrFrie
    soweit ich weiß ist das nicht möglich.

    Undo-Funktionen sind prinzipiell sehr aufwändig. Man muß jede User-Aktion in ein Command übersetzen, und zu jedem Command gleich das GegenCommand hinzugenerieren.

    Commands kannstedir ungefähr vorstellen als ein Dings, welches sich eine Methode merkt, zusammen mit dazugehörigen Parametern, sodasser die Methode auch später ausführen kann.

    Dann brauchst du noch eine Command-Chain, also etwas, mit dem du die Commands vorwärts und rückwärts durchlaufen kannst.

    Ausserhalb der CommandChain darf es überhaupt keine UserAktion geben, denn wenn eine Änderung am Datensatz in der Chain ist, der Datensatz über andere Wege aber zwischenzeitlich gelöscht wurde, dann bäng.