yop ...

C'est purement théorique comme question mais je cherche des pistes pour faire en sorte d'avoir moyen de revenir en arrière dans les modifications d'un data grid chargé à l'aide d'un fichier xml. Je ne passe pas par un dataset, ça m'a donné trop d'erreurs du style à me coller une colonne sans aucun rapport avec le contenu de mon fichier xml, mais par une liste d'objets d'une classe maison "ContPath". En fait cette portion du fichier xml stocke des chemins d'accès, le datagrid permet via un menu contextuel d'ajouter, effacer une ligne et j'aimerai rajouter un mode "back" pour remonter petit à petit sur les dernières opérations effectuées.
La sauvegarde n'a lieu qu'a l'appui sur un bouton dédié, qui ne peut s'activer qu'en cas de changement de contenu, je pourrais annuler simplement les opérations effectuées depuis la dernière sauvegarde mais je me dis qu'on peut faire mieux.

Je connais le vieux classique d'avoir une copie de la liste dès le départ et de faire appel à elle pour supplanter le contenu de la liste utilisée dans le datagrid, mais peut être y'a t'il autre chose dans le langage c# qui existe ? J'ai cru comprendre sur un forum anglais, mais sur un topic qui date qu'on passait par un fichier horodatant les dernières actions, n'y a t'il rien d'automatisé depuis 2008 ?

Merci pour le temps accordé à la lecture.

Edit: désolé en partant après avoir mis ce message j'ai réfléchi, en plus j'ai eu l'occasion d'exposer une idée à ma moitié qui même si elle n'y comprend rien m'écoute et ça me parait plus clair maintenant donc désolé du dérangement.

Edit2: au cas ou un jour quelqu'un se pose la question, j'ai donc opté pour un stack<T>, facile à manipuler qui conserve un historique des suppressions puisqu'au final je n'avais besoin que de cela ici. Je n'ai pas besoin d'un fichier au final car il y a peu de chances que j'ai besoin de récupérer un historique d'avant fermeture du fichier.

Désolé pour le dérangement.