/// <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);
        }
示例#2
0
        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);
            }
        }
示例#3
0
        /// <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);
            }
        }
示例#4
0
        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();
        }
示例#5
0
        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);
        }
示例#7
0
        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);

                }
            }
        }
示例#8
0
        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;
        }
示例#10
0
文件: frmMain.cs 项目: Kurris/AGW
        /// <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();
            }
        }