protected void ShowTabbedMdi(frmBase form) { bool isFound = false; foreach (frmBase frm in this.MdiChildren) { if (frm.Key == form.Key) { frm.Activate(); this.ActivateMdiChild(frm); isFound = true; } } try { if (!isFound) { form.MdiParent = this; form.Show(); } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
/// <summary> /// 菜单单击事件 /// </summary> /// <param name="menuInfo"></param> /// <param name="e"></param> protected virtual void menuFolderTool_MenuClickEvent(XMenuInfo menuInfo, EventArgs e) { try { frmBase frm = Assembly.Load(menuInfo.NameSpace).CreateInstance(menuInfo.FullAssembleName) as frmBase; if (frm == null) { XMessageBox.ShowError("该功能未实现或者实现的接口不正确!"); return; } if (menuInfo.IsDialogModel) { frm.StartPosition = FormStartPosition.CenterParent; frm.ShowDialog(); } else { this.ShowTabbedMdi(frm); } } catch (Exception ex) { XMessageBox.ShowError(ex.Message); XErrorLogTool.WriteLog(ex.ToString()); } }
private void frmMain_Load(object sender, EventArgs e) { if (!this.DesignMode) { this.InitMenuFolder();//初始化系统菜单 } frmBase defaultForm = this.GetDefaultForm(); if (defaultForm != null) { this.ShowTabbedMdi(defaultForm); } this.cmdCloseAll.Click += cmdCloseAll_Click; //this.SetFormControlFont(this.pnlMenu); }