ник: snipe
если кнопка невидима то почему бы не передать фокус нужному контролу принудительно, а если видима то кнопке
например
обрабатывая события формы Текущая запись - проверяем если в поле есть условие то отображаем или скрываем кнопку
событие поля После обновления - в зависимости от данных поля скрываем или отображаем кнопку
событие поля потеря фокуса - проверяем состояние кнопки и передаем фокус либо кнопке либо другому контролу