I just created a new CodePlex project: http://undo.codeplex.com What It's a simple framework to add Undo/Redo functionality to your applications, based on the classical Command design pattern . It supports merging actions, nested transactions, delayed