次のことを行うボタンを設定しようとしています。
- フォームが開いている (そしてフォーカスを失っている) かどうかを確認します。もしそうなら、それはそのフォームを前面に持ってきます。
- そうでない場合は、フォームの新しいインスタンスを開きます。
ただし、いくつかの異なる方法を試してみましたが、常に新しいフォームを作成するか (チェックとして frm_About.visible を使用する場合)、単に何もしません (次のコードを使用)。
Private Sub counter_aboutClick(sender As Object, e As EventArgs) Handles counter_About.Click
If Application.OpenForms().OfType(Of frm_About).Any Then
frm_About.BringToFront()
Else
Dim oAbout As frm_About
oAbout = New frm_About()
oAbout.Show()
oAbout = Nothing
End If
End Sub
特定のシナリオで BringToFront にバグがあると聞きましたが、そのバグに該当するのでしょうか?