Stai confondendo le cose...
La proprietà CauseValidation vale per il controllo corrente.
Che tu lo imposti per il CommandButton non ha alcuna influenza sugli eventi Validate degli altri controlli.

Personalmente uso raramente l'evento Validate (e solo in casi specifici).

Preferisco creare una function ValidaCampi() che esamina tutti i campi e restituisce True se tutto è OK, altrimenti False.
In questo modo decido io "se" e "quando" operare la validazione.