Gets a collection of all the application's open forms.
' Usage Dim value As System.Windows.Forms.FormCollection = My.Application.OpenForms ' Declaration Public ReadOnly Property OpenForms As System.Windows.Forms.FormCollection
The My.Application.OpenForms property gets a collection of all the application's open forms. The behavior is identical to theproperty.
The My.Application.OpenForms property returns all open forms, regardless of which thread opened them. You should check theproperty of each form before accessing it; otherwise, it might throw an exception. For more information, see .
This example loops over the application's open forms, selects the ones directly accessible by the current thread, and displays their titles in acontrol. To access the open forms, see .
Private Sub GetOpenFormTitles() Dim formTitles As New Collection Try For Each f As Form In My.Application.OpenForms If Not f.InvokeRequired Then ' Can access the form directly. formTitles.Add(f.Text) End If Next Catch ex As Exception formTitles.Add("Error: " & ex.Message) End Try Form1.ListBox1.DataSource = formTitles End Sub
This example requires that your Windows Forms application have a form named Form1 that contains a list box named ListBox1.