private MB.Util.Model.ModuleTreeNodeInfo[] getDefaultModule() { MB.Util.Model.ModuleTreeNodeInfo mInfo = new MB.Util.Model.ModuleTreeNodeInfo(1, "系统设置"); MB.Util.Model.ModuleTreeNodeInfo mInfo1 = new MB.Util.Model.ModuleTreeNodeInfo(1, "商品管理"); MB.Util.Model.ModuleTreeNodeInfo mInfo2 = new MB.Util.Model.ModuleTreeNodeInfo(1, "征订主题"); MB.Util.Model.ModuleTreeNodeInfo mInfo3 = new MB.Util.Model.ModuleTreeNodeInfo(1, "征订主题控制"); MB.Util.Model.ModuleTreeNodeInfo mInfo4 = new MB.Util.Model.ModuleTreeNodeInfo(1, "征订单"); MB.Util.Model.ModuleTreeNodeInfo mInfo5 = new MB.Util.Model.ModuleTreeNodeInfo(1, "批量修改征订单"); MB.Util.Model.ModuleTreeNodeInfo mInfo6 = new MB.Util.Model.ModuleTreeNodeInfo(1, "查询分析"); MB.Util.Model.ModuleTreeNodeInfo mInfo7 = new MB.Util.Model.ModuleTreeNodeInfo(1, "期货合同"); mInfo.Commands = new List <MB.Util.Model.ModuleCommandInfo>(); mInfo.Commands.Add(new MB.Util.Model.ModuleCommandInfo("Open", "MyRuleTestUI.UITestRuleClient,MyRuleTestUI.dll", "MB.WinClientDefault.DefaultViewForm,MB.WinClientDefault.dll")); mInfo.Commands.Add(new MB.Util.Model.ModuleCommandInfo("AddNew", "MyRuleTestUI.UITestRuleClient,MyRuleTestUI.dll", "MyRuleTestUI.frmEditTestRule,MyRuleTestUI.dll")); MB.Util.Model.ModuleTreeNodeInfo[] ms = { mInfo, mInfo1, mInfo2, mInfo3, mInfo4, mInfo5, mInfo6, mInfo7 }; return(ms); }
//根据当前活动的子窗口 格式化操作的菜单项 private void refreshToolsButtonItem(MB.Util.Model.ModuleTreeNodeInfo moduleInfo) { _RejectCommandItems.Clear(); foreach (DevExpress.XtraBars.BarButtonItem butItem in _AllCreateMenuItems.Keys) { butItem.Enabled = true; } if (!string.IsNullOrEmpty(moduleInfo.RejectCommands)) { string[] rejects = moduleInfo.RejectCommands.Split(','); foreach (DevExpress.XtraBars.BarButtonItem butItem in _AllCreateMenuItems.Keys) { System.ComponentModel.Design.CommandID cmdID = _AllCreateMenuItems[butItem]; UICommandType cType = (UICommandType)cmdID.ID; if (Array.IndexOf(rejects, cType.ToString()) >= 0) { butItem.Enabled = false; if (!_RejectCommandItems.ContainsKey(butItem)) { _RejectCommandItems.Add(butItem, false); } else { _RejectCommandItems[butItem] = false; } } } } MB.WinBase.IFace.IForm activeForm = this.GetActiveMdiChildForm(); if (activeForm == null) { return; } //如果是分析界面的话要屏蔽掉操作功能菜单项。 MB.WinBase.IFace.IClientRule editRule = activeForm.ClientRuleObject as MB.WinBase.IFace.IClientRule; if (editRule != null) { return; } foreach (DevExpress.XtraBars.BarButtonItem butItem in _AllCreateMenuItems.Keys) { System.ComponentModel.Design.CommandID cmdID = _AllCreateMenuItems[butItem]; var info = CommandGroups.EditCommands.FirstOrDefault(o => o.CommandID.Equals(cmdID)); if (info != null) { butItem.Enabled = false; if (!_RejectCommandItems.ContainsKey(butItem)) { _RejectCommandItems.Add(butItem, false); } else { _RejectCommandItems[butItem] = false; } continue; } if (cmdID.Equals(UICommands.DataImport)) { butItem.Enabled = false; if (!_RejectCommandItems.ContainsKey(butItem)) { _RejectCommandItems.Add(butItem, false); } else { _RejectCommandItems[butItem] = false; } continue; } } }
//根据当前活动的子窗口 格式化操作的菜单项 private void refreshToolsButtonItem(MB.Util.Model.ModuleTreeNodeInfo moduleInfo) { using (MB.Util.MethodTraceWithTime track = new Util.MethodTraceWithTime("XtraRibbonMdiMainForm::refreshToolsButtonItem")) { _RejectCommandItems.Clear(); foreach (DevExpress.XtraBars.BarButtonItem butItem in _AllCreateMenuItems.Keys) { butItem.Enabled = true; } //2009-21-29主要从兼容的角度来处理,以后需要去掉 (新订货会系统中有需要) if (!string.IsNullOrEmpty(moduleInfo.RejectCommands)) { string[] rejects = moduleInfo.RejectCommands.Split(','); foreach (DevExpress.XtraBars.BarButtonItem butItem in _AllCreateMenuItems.Keys) { System.ComponentModel.Design.CommandID cmdID = _AllCreateMenuItems[butItem]; UICommandType cType = (UICommandType)cmdID.ID; if (Array.IndexOf(rejects, cType.ToString()) >= 0) { butItem.Enabled = false; if (!_RejectCommandItems.ContainsKey(butItem)) { _RejectCommandItems.Add(butItem, false); } else { _RejectCommandItems[butItem] = false; } } } } MB.WinBase.IFace.IForm activeForm = this.GetActiveMdiChildForm(); if (activeForm == null || activeForm.ClientRuleObject == null) { foreach (DevExpress.XtraBars.BarButtonItem butItem in _AllCreateMenuItems.Keys) { butItem.Enabled = false; } return; } //根据业务类上的配置项来进行约束操作菜单项。 var rejectCfg = MB.WinBase.Atts.AttributeConfigHelper.Instance.GetModuleRejectCommands(activeForm.ClientRuleObject.GetType()); if (rejectCfg != null) { foreach (DevExpress.XtraBars.BarButtonItem butItem in _AllCreateMenuItems.Keys) { System.ComponentModel.Design.CommandID cmdID = _AllCreateMenuItems[butItem]; UICommandType cType = (UICommandType)cmdID.ID; if ((rejectCfg.RejectCommands & cType) != 0) { butItem.Enabled = false; if (!_RejectCommandItems.ContainsKey(butItem)) { _RejectCommandItems.Add(butItem, false); } else { _RejectCommandItems[butItem] = false; } } } } //如果是分析界面的话要屏蔽掉操作功能菜单项。 MB.WinBase.IFace.IClientRule editRule = activeForm.ClientRuleObject as MB.WinBase.IFace.IClientRule; if (editRule != null) { return; } foreach (DevExpress.XtraBars.BarButtonItem butItem in _AllCreateMenuItems.Keys) { System.ComponentModel.Design.CommandID cmdID = _AllCreateMenuItems[butItem]; var info = CommandGroups.EditCommands.FirstOrDefault(o => o.CommandID.Equals(cmdID)); if (info != null) { butItem.Enabled = false; if (!_RejectCommandItems.ContainsKey(butItem)) { _RejectCommandItems.Add(butItem, false); } else { _RejectCommandItems[butItem] = false; } continue; } if (cmdID.Equals(UICommands.DataImport)) { butItem.Enabled = false; if (!_RejectCommandItems.ContainsKey(butItem)) { _RejectCommandItems.Add(butItem, false); } else { _RejectCommandItems[butItem] = false; } continue; } } } }