Geoff,
>Almost got there myself. Didn't think of the dodefault() - nodefault bit though.
>Can you tell me what happens with the Dodefault() on the standard control?
dodefault() to get the base behavior to happen before it normally happens, and the nodefault to prevent it from happening when it normally does (after all your code) because it may undo the work you just did by tweaking the Sel* values.
>
this.SelStart = 0
sorry for the typo.