/// <summary> /// 添加页面 /// </summary> /// <param name="pageName"></param> /// <param name="pageIco"></param> /// <returns></returns> public virtual DevExpress.XtraNavBar.NavBarGroup appendPage(string pageName, Image pageIco) { DevExpress.XtraNavBar.NavBarGroupControlContainer tempContainers = new NavBarGroupControlContainer(); tempContainers.Appearance.BackColor = System.Drawing.SystemColors.Control; tempContainers.Appearance.Options.UseBackColor = true; tempContainers.Name = Guid.NewGuid().ToString(); tempContainers.Size = new System.Drawing.Size(176, 402); tempContainers.TabIndex = 0; DevExpress.XtraNavBar.NavBarGroup tempGroup = new NavBarGroup(); tempGroup.Caption = pageName; tempGroup.ControlContainer = tempContainers; tempGroup.DragDropFlags = DevExpress.XtraNavBar.NavBarDragDrop.None; tempGroup.Expanded = true; tempGroup.GroupCaptionUseImage = DevExpress.XtraNavBar.NavBarImage.Large; tempGroup.GroupClientHeight = 264; tempGroup.GroupStyle = DevExpress.XtraNavBar.NavBarGroupStyle.ControlContainer; tempGroup.LargeImage = pageIco; tempGroup.Name = Guid.NewGuid().ToString(); this.nbcLeftTree.Controls.Add(tempContainers); this.nbcLeftTree.Groups.Add(tempGroup); pageDict[pageName] = tempGroup; return(tempGroup); }
private NavBarGroup CreateNavBarGroup1(ToolStripMenuItem items) { try { NavBarGroup navBarGroup = new NavBarGroup(); navBarGroup.Caption = items.Text; navBarGroup.Expanded = true; navBarGroup.GroupStyle = DevExpress.XtraNavBar.NavBarGroupStyle.ControlContainer; NavBarControl navBar = CreateNavBarGroup2(items); if (navBar != null) { NavBarGroupControlContainer navBarGroupControl = new NavBarGroupControlContainer(); navBarGroupControl.Appearance.BackColor = Color.Red; navBarGroupControl.Appearance.Options.UseBackColor = true; navBarGroupControl.Controls.Add(navBar); navBarGroup.ControlContainer = navBarGroupControl; navBarControl.Controls.Add(navBarGroupControl); } return(navBarGroup); } catch (Exception ex) { return(null); } }
/// <summary> /// 加载功能菜单对应的窗体 /// </summary> /// <param name="CtnerNam">树菜单对应的容器名称</param> /// <param name="TrName">树菜单名称</param> /// <param name="Frm">XtraTabPage中装载的窗体</param> private void LoadFrm(string CtnerNam, string TrName) { try { //获取测试管理模块容器 var query = from Container1 in List_Container where Container1.Name == CtnerNam select Container1; NavBarGroupControlContainer NavContainer = null; foreach (var Container2 in query) { NavContainer = Container2 as NavBarGroupControlContainer; } //获取容器中的菜单树 TreeList TrList_ADM = NavContainer.Controls[TrName] as TreeList; DevExpress.XtraTab.XtraTabPage Page = new DevExpress.XtraTab.XtraTabPage(); //页签标题设置 Page.Text = TrList_ADM.FocusedNode.GetValue("FuncNam").ToString(); //判断将要打开的页签是否已经存在 if (!PageIsExist(Page)) { //利用反射实例化窗体 Assembly assembly = Assembly.GetExecutingAssembly(); // 获取当前程序集 FrmCommon Frm = assembly.CreateInstance(TrList_ADM.FocusedNode.GetValue("FrmNam").ToString()) as FrmCommon; Page.ShowCloseButton = DevExpress.Utils.DefaultBoolean.True; //指定该窗体是有父窗体的窗体(非顶级窗体)。 Frm.TopLevel = false; //初始化窗体实例名称 Frm.FrmNam = TrList_ADM.FocusedNode.GetValue("FrmNam").ToString(); //初始化当前登录用户信息 Frm.CurUsrID = CurUsrID; Frm.CurUsrName = CurUsrName; Frm.Dock = DockStyle.Fill; //去边框处理 Frm.FormBorderStyle = FormBorderStyle.None; //将窗体装载入页面中 Page.Controls.Add(Frm); //增加新页面 Tab_Main.TabPages.AddRange(new DevExpress.XtraTab.XtraTabPage[] { Page }); //实例化关闭页面委托 Frm.PgClose = new FrmCommon.PageClose(ClosePage); //将窗体显示出来。 Frm.Show(); //新页面增加后自动定位到该页面 Tab_Main.SelectedTabPage = Page; } } catch (Exception Ex) { Common.ShowMsg(Ex.Message); } }
public void LoadTreeMenu(GpNavBarTreeMenu menu) { nvbrcntrlLeft.Groups.Clear(); nvbrcntrlLeft.Items.Clear(); NavBarGroup grpHeader = nvbrcntrlLeft.Groups.Add(); grpHeader.Caption = menu.Caption; grpHeader.GroupStyle = NavBarGroupStyle.ControlContainer; TreeList tree = new TreeList(); tree.RowHeight = 30; NavBarGroupControlContainer container = new NavBarGroupControlContainer(); container.Controls.Add(tree); grpHeader.ControlContainer = container; container.Padding = new System.Windows.Forms.Padding(4); tree.Dock = DockStyle.Fill; tree.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder; tree.MouseClick += new MouseEventHandler(tree_MouseClick); tree.Appearance.SelectedRow.BackColor = Color.FromArgb(53, 153, 255); tree.OptionsView.ShowHorzLines = false; tree.OptionsView.ShowVertLines = false; tree.OptionsBehavior.Editable = false; tree.OptionsView.ShowRoot = false; tree.OptionsView.ShowColumns = false; tree.OptionsView.ShowIndicator = false; tree.SelectImageList = imageCollection1; TreeListColumn col = tree.Columns.Add(); col.Visible = true; col.Width = 150; col.FieldName = "test"; col.Caption = "test"; for (int i = 0; i < menu.Items.Count; i++) { GpNavBarTreeItem item = menu.Items[i]; TreeListNode childNode = tree.AppendNode(new Object[] { item.Caption }, -1); childNode.Tag = item; if (item.IsFolder) { for (int j = 0; j < item.Items.Count; j++) { LoadItem(childNode, item.Items[j]); } } if (tree.SelectImageList != null) { childNode.ImageIndex = item.IsFolder ? 0 : 1; childNode.SelectImageIndex = item.IsFolder ? 0 : 1; } } tree.ExpandAll(); }
void Cretate_UC_TreeNavBar(DevExpress.XtraNavBar.NavBarGroup navBarGroup) { BarGroup wBarGroup = (BarGroup)navBarGroup.Tag; NavBarGroupControlContainer navBarGroupControlContainer = new NavBarGroupControlContainer(); navBarGroupControlContainer.SuspendLayout(); this.Controls.Add(navBarGroupControlContainer); UC_TreeNavBar treeList = new UC_TreeNavBar(); this.SuspendLayout(); navBarGroup.GroupStyle = NavBarGroupStyle.ControlContainer; navBarGroupControlContainer.Controls.Add(treeList); navBarGroupControlContainer.Name = "navBarGroupControlContainer" + treeCount; navBarGroupControlContainer.Size = new System.Drawing.Size(176, 243); //navBarGroupControlContainer.TabIndex = treeCount; navBarGroup.ControlContainer = navBarGroupControlContainer; treeList.Populate(wBarGroup.MenuBarTree, this.IsOnDesignMode); treeList.Dock = System.Windows.Forms.DockStyle.Fill; treeList.Location = new System.Drawing.Point(0, 0); treeList.Name = string.Concat("treeList", treeCount); treeList.TabIndex = treeCount; treeList.Tag = wBarGroup.MenuBarTree; treeList.OnNodeClick += new OnNodeClickHandler(treeList_OnNodeClick); treeList.OnTreeViewClick += new EventHandler(treeList_OnTreeViewClick); SetTreeDesignMode(treeList); treeCount++; navBarGroupControlContainer.ResumeLayout(false); this.ResumeLayout(false); }
/// <summary> /// Shows the smart part in the workspace. /// </summary> /// <param name="smartPart">The smart part to show</param> /// <param name="smartPartInfo">The associated smart part info for the smart part being shown.</param> protected virtual void OnShow(Control smartPart, XtraNavBarGroupSmartPartInfo smartPartInfo) { NavBarGroup group = new NavBarGroup { GroupStyle = NavBarGroupStyle.ControlContainer, GroupClientHeight = smartPart.Height, Expanded = true }; ApplySmartPartInfoHelper(group, smartPartInfo); composer.Add(group, smartPart); Groups.Add(group); var controlContainer = new NavBarGroupControlContainer { Size = smartPart.Size }; group.ControlContainer = controlContainer; // Add the smart part control smartPart.Dock = DockStyle.Fill; controlContainer.Controls.Add(smartPart); }
public void GetMenu(NavBarControl navBarControl,ImageList images) { menuGroup = context.Module.Where(m => m.MpParentCode == "0").ToList<Module>(); if (menuGroup.Count>0) { foreach (Module module in menuGroup) { // 新建NavBarGroup NavBarGroup group=new NavBarGroup(); group.Caption = module.MpName; group.GroupClientHeight = 80; group.GroupStyle = DevExpress.XtraNavBar.NavBarGroupStyle.ControlContainer; //group.Appearance.Options.UseTextOptions = true; //group.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; group.Name = module.MpCode; NavBarGroupControlContainer controlContainer=new NavBarGroupControlContainer(); controlContainer.Name = module.MpName + module.MpCode; controlContainer.Size = new System.Drawing.Size(140, 175); group.LargeImage = images.Images[count++]; #region 创建树 // TreeList treeNode = new TreeList(); TreeView treeNode=new TreeView(); treeNode.NodeMouseDoubleClick += new TreeNodeMouseClickEventHandler(treeNode_NodeMouseDoubleClick); // treeNode.TreeListMenuItemClick += new TreeListMenuItemClickEventHandler(treeNode_TreeListMenuItemClick); treeNode.Size = controlContainer.Size; treeNode.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); treeNode.Location = new System.Drawing.Point(0, 0); treeNode.Name = module.MpCode; treeNode.ImageList = images; foreach (Module subModule in context.Module) { if (subModule.MpParentCode == treeNode.Name) { var subsubTreeNode = new TreeNode(); subsubTreeNode.Text = subModule.MpName; //目录名 subsubTreeNode.Name = subModule.MpCode; //编号 subsubTreeNode.ToolTipText = subModule.MpParentCode; //获取或设置当鼠标指针悬停于 TreeNode 之上时显示的文本。 subsubTreeNode.ImageIndex = count++; treeNode.Nodes.Add(subsubTreeNode); GetSubMenu(subsubTreeNode); } } #endregion // 添加 controlContainer.Controls.Add(treeNode); group.ControlContainer = controlContainer; navBarControl.Controls.Add(controlContainer); navBarControl.Groups.Add(group); } } }
void Cretate_UC_TreeNavBar(DevExpress.XtraNavBar.NavBarGroup navBarGroup) { BarGroup wBarGroup = (BarGroup)navBarGroup.Tag; NavBarGroupControlContainer navBarGroupControlContainer = new NavBarGroupControlContainer(); navBarGroupControlContainer.SuspendLayout(); this.Controls.Add(navBarGroupControlContainer); UC_TreeNavBar treeList = new UC_TreeNavBar(); this.SuspendLayout(); navBarGroup.GroupStyle = NavBarGroupStyle.ControlContainer; navBarGroupControlContainer.Controls.Add(treeList); navBarGroupControlContainer.Name = "navBarGroupControlContainer" + treeCount; navBarGroupControlContainer.Size = new System.Drawing.Size(176, 243); //navBarGroupControlContainer.TabIndex = treeCount; navBarGroup.ControlContainer = navBarGroupControlContainer; treeList.Populate(wBarGroup.MenuBarTree,this.IsOnDesignMode); treeList.Dock = System.Windows.Forms.DockStyle.Fill; treeList.Location = new System.Drawing.Point(0, 0); treeList.Name = string.Concat("treeList", treeCount); treeList.TabIndex = treeCount; treeList.Tag = wBarGroup.MenuBarTree; treeList.OnNodeClick += new OnNodeClickHandler(treeList_OnNodeClick); treeList.OnTreeViewClick += new EventHandler(treeList_OnTreeViewClick); SetTreeDesignMode(treeList); treeCount++; navBarGroupControlContainer.ResumeLayout(false); this.ResumeLayout(false); }
private void AddFloor(NavBarGroup aNavBarGroup, int LevelSku, uc_RoomStatusItem[] aListRoom) { NavBarGroupControlContainer aNavBarGroupControlContainer = new NavBarGroupControlContainer(); aNavBarGroupControlContainer.Name = "navBarGroupControlContainer" + LevelSku; //aNavBarGroupControlContainer.Size = new System.Drawing.Size(865, 300); aNavBarGroupControlContainer.TabIndex = 0; aNavBarGroupControlContainer.Height = 500; aNavBarGroup.ControlContainer = aNavBarGroupControlContainer; aNavBarGroup.GroupClientHeight = 370; aNavBarGroupControlContainer.Controls.Add(aListFlowLayoutPanel[LevelSku - 1]); this.navBarControl1.Controls.Add(aNavBarGroupControlContainer); this.navBarControl1.Groups.Add(aNavBarGroup); this.AddRoom(aListFlowLayoutPanel[LevelSku - 1], LevelSku, aListRoom); aNavBarGroupControlContainer.Dock = DockStyle.Fill; aNavBarGroupControlContainer.AutoSize = true; //aNavBarGroupControlContainer.AutoSizeMode = AutoSizeMode.GrowAndShrink; aListFlowLayoutPanel[LevelSku - 1].Dock = DockStyle.Fill; aListFlowLayoutPanel[LevelSku - 1].AutoSize = true; aListFlowLayoutPanel[LevelSku - 1].AutoSizeMode = AutoSizeMode.GrowAndShrink; }
/// <summary> /// 初始化导航栏 /// </summary> private void InitNavbar() { string sSql = @"SELECT * FROM t_Navigation with(nolock) "; DataTable dt = DBHelper.GetDataTable(sSql); MainNavBar.PaintStyleKind = NavBarViewKind.NavigationPane; MainNavBar.Groups.Clear(); //导航栏 DataRow[] drNavs = dt.Select("fNavType = 1"); foreach (DataRow dr in drNavs) { //Nav容器 NavBarGroupControlContainer Container = new NavBarGroupControlContainer(); //Nav分组 NavBarGroup Group = new NavBarGroup(); Group.Caption = dr["fName"] + ""; Group.Name = dr["fno"] + ""; //分组的容器 Group.ControlContainer = Container; Group.GroupStyle = NavBarGroupStyle.ControlContainer; //添加 MainNavBar.Groups.Add(Group); MainNavBar.Controls.Add(Container); TreeView treeview = new TreeView(); treeview.NodeMouseDoubleClick += Treeview_NodeMouseDoubleClick; treeview.Dock = DockStyle.Fill; Container.Controls.Add(treeview); //取导航栏同组的数据 string sNo = dr["fGroup"] + ""; DataRow[] drs = dt.Select(string.Format("fGroup = '{0}' and fPid={1}", sNo, 0)); foreach (DataRow drr in drs) { TreeNode fnode = new TreeNode(); fnode.Name = string.Empty;//DataHelper.ToString(drr["fNo"]); fnode.Tag = Convert.ToInt32(drr["fCid"]); fnode.Text = drr["fName"] + ""; treeview.Nodes.Add(fnode); FindChildNode(dt, fnode, Convert.ToInt32(fnode.Tag)); } void FindChildNode(DataTable dtAll, TreeNode fnode, int ifid) { DataRow[] drsNode = dtAll.Select(string.Format("fPid = {0} and fgroup='{1}'", ifid, sNo)); foreach (DataRow drS in drsNode) { if (Convert.ToInt32(drS["fPid"]) == ifid) { TreeNode snode = new TreeNode(); snode.Tag = Convert.ToInt32(drS["fCid"]); snode.Text = drS["fName"] + ""; snode.Name = drS["fAssembly"] + ""; fnode.Nodes.Add(snode); FindChildNode(dtAll, snode, Convert.ToInt32(snode.Tag)); } } } treeview.ExpandAll(); } }