# Check to see whether a form exists at runtime

If you want to check whether a form exists in your project at runtime
you can use the following method, you will need to ensure that you
import System.Reflection in order for this to work.

''' <summary>
''' This method deals with checking whether a form exists within the current project
''' </summary>
''' <param name="formName">The name of the form that you wish to check its existance</param>
''' <returns>True if the form exists and False if the form doesn't exist</returns>
''' <remarks></remarks>
Public Shared Function formExists(ByVal formName As String) As Boolean
Dim myAssembly As Assembly
Dim frm As Form = Nothing
Dim assemblyName As String

Try
myAssembly = Assembly.GetEntryAssembly
assemblyName = myAssembly.FullName.Split(",")(0)
frm = myAssembly.CreateInstance(assemblyName & "." & formName)
Catch ex As Exception
End Try

Return frm IsNot Nothing
End Function


Please note the reason that we are using Assembly.GetEntryAssembly rather than Assembly.GetExecutingAssembly is that if we was to put our code into a DLL for example, then the executing assembly would be the dll which in most cases wouldn’t contain the forms. Obviously if your forms and the code that gets the form are held in the DLL then you would want to use Assembly.GetExecutingAssembly.