Независимо от того, подкладываете ли вы форму - или создаете контролы динамически - форма есть. Это либа Ваша форма - либо форма Dialog. Что мешает ввести некий параметр типа parmShowModal() ? Вводить нужно очевидно на классе RunBase. Соответственно - на форме Dialog и на своей форме - перекрываете метод close() (и не нужно его создавать динамически) - и делаете проверку в нем аналогично как показал raz:
X++:
if (element.runbase().parmShowModal())
{
setFormModal(element.hWnd(), false);
}
super();
Единственное - что - на Вашей форме (которую Вы подкладываете) - д.б. метод runbase() возвращающий ссылку на класс RunBase