I have a similar problem: I want to set up the form controls depending on data values (enable or disable controls). The way I handle this normally is in the _current event code. But _current doesn't get run after the _undo. As you said, the dirty values are still set when _undo is run.
Did you...