Question:
How do I validate a textbox, which doesn’t have any control source, so if it’s empty it should not lose the focus until the user enters some value?
Answer:
There is a method called Valid that fires when a control (a textbox in this case) loses focus. If the code in this method returns .F. or zero, then the textbox will not lose focus. This is true whether the textbox is attached to a controlsource or not.
Putting the following code into the Valid method of your textbox will prevent leaving the textbox until some value has been entered:
RETURN !EMPTY(this.Value)