With combo.valid(), if .F. is returned the value stays at the new (invalid) value, and I have to restore the original value with some code like this.value=this.origvalue before leaving the validation code.Hmmm. This sounds like an oxymoron to me < s >. The reason for using a combo box is to limit the selections to valid choices only. So my first question would be "Why are you putting invalid choices in the list?"
Has anyone idea what may be happening here, and how to solve the problem? Any help would be appreciated.I think you already have the solution. Add a custom property to your combo class called uOldVal, and put code like this in the gotFocus():
This.uOldVal = This.Value
Then, in the Valid, if the selection is invalid, restore uOldVal.