In any case, what you've described is what I've done in the past in my previous position. Rather than playing around with the "Keys" method, we also set Value or, in later version of TC, using SetText. And then we need to call the OnChange handler itself.
For us, the trigger was when someone leaves the field. They're typing and then they click on a different button. Focus has changed and so the field has been "exited". In those circumstances, there is a method on the field called "DoExit". This fires the OnExit event handler which has a bunch of code to do stuff and now everything is smooth..
Automated Testing Evangelists
Definition expert - noun - Unknown drip under pressure