при закрытии основной формы это похоже на закрытие приложения ...
Таким образом, можно предложить отключить кнопку закрытия основной формы, когда открыты дочерние формы ... и просто включить ее снова, если нет открытых дочерних форм ...
или создайте глобальную переменную (возможно, bool), чтобы при открытии дочерней формы было установлено значение true ... поэтому при нажатии кнопки закрытия на главной форме ... она проверяет эту переменную, если она истинна он предлагает сохранить .. иначе он просто закрывается ...