我提出这个问题以获得更多知识.我怎么知道表单是否在我的应用程序中打开,以便不再打开它我的意思是不要在它运行时创建相同表单的实例
Dim frmCollection As New FormCollection()
frmCollection = Application.OpenForms()
If frmCollection.Item("Form2").IsHandleCreated Then
MsgBox("Yes Opened")
Else
Dim f As New Form2()
With f
.Text = "form2"
.Show()
End With
End If
Run Code Online (Sandbox Code Playgroud)
如果我多次执行此代码,它将创建表单Form2的更多实例如何检查此表单是否尚未打开
Lar*_*ech 42
你可以这样试试:
Imports System.Linq ' need to add
If Application.OpenForms().OfType(Of Form2).Any Then
MessageBox.Show("Opened")
Else
Dim f2 As New Form2
f2.Text = "form2"
f2.Show()
End If
Run Code Online (Sandbox Code Playgroud)
小智 9
您可以使用以下代码:
If myForm.IsHandleCreated then
myForm is open
End If
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
82143 次 |
最近记录: |