Alternative to Single Instance Form in a MDI application
Assuming you only want a single instance of a form type, I'd suggest you add a Dictionary(Of Type, Form). ShowOrActiveForm would have a single parameter of Type and would be a subroutine.The Form object could be found based on a ContainsKey. The rest of the ShowOrActiveForm function would be...
Checking for an existing instance of a Windows application, and setting the MDI parent form of an MDI child