メイン フォーム (frmA) をブロックせずに MdiChild (frmB) フォームからモーダル フォーム (frmD) を開く必要があり、他のすべてのフォームは MdiChild フォーム (frmC) を開きました。次に、frmDが非表示になっているfrmCに切り替えます。
これは同様の質問ですが、Mdi アプリケーションではありません。
モーダル ダイアログを開いて、それを開いた mdi 子フォームのみをブロックする方法はありますか?
この記事.Show()
では、モーダルダイアログを開く代わりにメソッドを使用し、メソッドを呼び出す直前に.ShowDialog()
MdiChildのプロパティをfalseに設定することで、考えられる戦略の1つについて説明します。Enabled
.Show()
次にEnabled
、ダイアログを閉じたときにMdiChildのプロパティをtrueに戻す必要があります。つまりFormClosing
、ダイアログのイベントを処理するには、MdiChildフォームにイベントハンドラーを作成する必要があります。