Couple of reasons make this problematic. Form automatically validates its fields. One can switch off this validation but need to keep in mind to switch validation back on for non JS submissions.
The other area which is tricky is that all dynamic fields must be added in the Page onInit event in order to be processed properly. One can invoke field.bindRequestValue to query the field's value, but bindRequestValue doesn't properly check whether or not its parent Form was submitted.
I propose we add a couple of helper methods to Form and Field to make this process smoother eg:
boolean field.bindAndValidate(); <- will return true if the field is valid, false otherwise
boolean form.bindAndValidateFields(); <- will return true if all fields are valid, false otherwise