Stephen,
WAIT WINDOW notoriously interferes with this kind of event analysis. You are far better off using DEBUGOUT instead.
In my txtSeeker class I set SelStart and SelLength to display the currently successfully "seeked" value. I don't mess with the .Value because it's bound to the column source.
>here is the code for proof:
>
>Wait wind nowait left(this.value,this.selstart) && Shows keyboard input
>If seek(left(this.value,this.selstart))
> llfound=.t.
><snip>
>this.value = v_teams.team_name
><snip>
> This.refresh && should paint the control with the teams name if found.