/// /// Allows the creation of the show-level form by identifying it as a sub-class. /// The types of the show level forms should be added to the _ShowLevelFormTypes array. /// This does not take into account multiple levels of inheritance, and will create /// the first form who's type is a sub-class of the baseFormType argument. /// /// The base form type to create /// public static Form CreateShowLevelFormFromBase(Type baseFormType) { Form newForm = null; foreach (Type showLevelType in UIControllerBase._ShowLevelFormTypes) { if (showLevelType.IsSubclassOf(baseFormType)) { newForm = (Form)System.Activator.CreateInstance(showLevelType); break; } } if (newForm == null) { newForm = (Form)System.Activator.CreateInstance(baseFormType); } return newForm; }