Я знаю, что это действительно поздно, но это может оказаться полезным для кого-то еще, кто может столкнуться с этим, как я делал, когда исследовал эту проблему. Вы могли бы сделать smt как:
newTransaction.MdiParent = Me
Me.Enabled = False
newTransaction.Show()
Me.Enabled = True
Это позволяет вам по-прежнему запускать форму как дочерний элемент, но отключает родительскую форму до тех пор, пока дочерний элемент не будет закрыт, а затем снова делает ее доступной.