найти экземпляры формы в VB 2008 - PullRequest
5 голосов
/ 19 января 2011
Dim f as new frmNameHere  
f.show()

Как найти все экземпляры frmNameHere, созданные с использованием вышеуказанного кода?

1 Ответ

10 голосов
/ 19 января 2011

Например:

For i As Int32 = 1 To 10
   Dim frm As New frmNameHere()
   frm.Show()
Next
Dim openForms = Application.OpenForms.OfType(Of frmNameHere)()
While openForms.Any()
   openForms.First.Close()
End While

Работает также без linq, но тогда вам придется перебирать все OpenForms:

Dim forms As FormCollection = Application.OpenForms
For Each form As Form In forms
   If TypeOf form Is frmNameHere Then
      'do something with your frmNameHere-Form'
   End If
Next
...