If you look at the Fields View in form, page type or custom table, even if a field is not required you can set different validation criteria to check against...so yes every field is going to get checked through the IsValid event. You could just let the base IsValid method run instead of overriding it (or before overriding it) and that would pick up the error for a required field. you should really only override it if you want to only do your own validation or extend the validation to do something the out of the box can't (such as compare a combination of fields together)