public void ShowMdiForm(Type ucType) { FormMdiBase formTemp = null; //Serach Mdi Form foreach (Form formMdiTemp in this.MdiChildren) { if (formMdiTemp.GetType().Name == ucType.Name) { formTemp = formMdiTemp as FormMdiBase; break; } } //Create Mdi Form From Assembly if (formTemp == null) { try { formTemp = (FormMdiBase)System.Activator.CreateInstance(ucType, null, null); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } if (formTemp != null) { formTemp.LoadMdiForm += new MdiFormLoadEventHandler(LoadMdiFormHandler); formTemp.UnloadMdiForm += new MdiFormUnLoadEventHandler(UnLoadMdiFormHandler); } } if (formTemp == null) { MessageBox.Show("This function does not exist."); return; } formTemp.MdiParent = this; formTemp.BringToFront(); formTemp.Show(); }