In one of Adam Nathan's recent posts he gripes about one of his pet peeves, which is that the cancel button in dialogs usually doesn't undo any work that has been done through the dialog when you click cancel. It just closes the dialog.

I agree and am looking forward to seeing this change when people see how easy we (the Transactions team) are making the use of Transactions starting with System.Transactions in Whidbey. Granted it is still a ways in the future, but it's on it's way I tell you!

With Whidbey you would be able to write a transaction aware managed text editor that had a transacted replace dialog that really would undo all the changes on cancel! The cost of entry to developing a resource manager has dropped considerably with Whidbey and makes things like this not only simpler but more likely in the future. Not to mention that since the resource manager that managed the text would be a volatile resource manager (and most likely the only resource manager to be enlisted on the Transactions) it would be very performant given our pay for play model in System.Transaction.

Additionally, when txF becomes available, the "undoing" of file name changes, deletes, moves, creations, etc.. from a file chooser dialogue could be undone if done from within a transaction!