В принципе, для этого используют класс на основе родительского класса RunBase. Примеры можно посмотреть в классах Tutorial_RunbaseBatch и Tutorial_RunbaseForm. Разве что в данном случае "Batch" - не нужен
Только сама идея - не правильная. Нельзя "бить по рукам" пользователя в процессе ввода. Подобный интерфейс крайне раздражает. Если нужен контроль ввода (в смысле, заполнение одних полей в зависимости от заполнения других полей), то этот контроль делается при попытке сохранить запись. Выводится сообщение вроде: Если Вы указали значение ХХХ, то должны указать значение УУУ. Поскольку Вы этого не сделали, то сохранение невозможно.