1

MDIParentForm に ToolStripMenuItem がいくつかあります。これを使用して、フォームをクリックして呼び出すフォームのステータスに応じて有効または無効にします。フォームが有効な場合、ToolStripMenuItem は無効になり、以前に開いたように新しいフォームを開くことができなくなります。理由はわかりませんが、ある子フォームから別の子フォームにフォーカスを変更すると、無効になっていた ToolStripMenuItem が再び有効になります (そうすべきではありません。コード)。これを使用して解決しました:

Dim formPrevio As Form = Application.OpenForms.OfType(Of AltaUsuario).Where(Function(frm) frm.Name = "AltaUsuario").SingleOrDefault
If formPrevio Is Nothing Then
   'open it again
Else
    'Get the focus again
End If

しかし、これを解決する他の方法があれば知りたいです。

4

1 に答える 1

2

ToolStripMenuItem を無効にするために、子フォームから MDI 親のパブリック関数を呼び出してみてください。

于 2015-02-19T20:54:29.043 に答える