When using the PropertyGrid and passing in an Object for the user to make changes, what is the best approach for handling a cancel/undo.
Do you provide a copy of the original object into the property grid make your changes then if the user accepts the mods then update the values into the original object?
Make a copy of the original settings and pass in the live object and if they cancel, move back the original values?
Or some other approach?