Example #1
0
        private void LoadNav()
        {
            Dictionary <string, bool> dict = new Dictionary <string, bool>();

            foreach (NavBarGroup nbg in navBarControl1.Groups)
            {
                dict.Add(nbg.Caption, nbg.Expanded);
            }
            navBarControl1.Groups.Clear();
            var groups = Access.UnitType.GetUnitTypeList();

            foreach (var group in groups)
            {
                NavBarGroup navGroup = new NavBarGroup(group.LXMC);
                navGroup.Tag = group;
                var subGroups = Access.UnitType.GetUnitTypeList(group.LXBM);
                foreach (var subGroup in subGroups)
                {
                    NavBarItem    ni  = new NavBarItem(subGroup.LXMC);
                    NavBarItemTag nbt = new NavBarItemTag(subGroup.LXMC, m_DicFromClass[group.BL2], "Careysoft.Dotnet.Tools.SqlData.ManageClient.exe", subGroup.LXBM, subGroup);
                    ni.Tag          = nbt;
                    ni.LinkClicked += new NavBarLinkEventHandler(ShowForm);
                    navBarControl1.Items.Add(ni);
                    NavBarItemLink nil = new NavBarItemLink(ni);
                    navGroup.ItemLinks.Add(nil);
                }
                navGroup.Expanded = dict.ContainsKey(group.LXMC) ? dict[group.LXMC] : true;;
                navBarControl1.Groups.Add(navGroup);
            }
        }
 private bool TryFindItem <TItem>(TItem key, out NavBarItemLink link)
 {
     link = Groups
            .SelectMany(g => g.ItemLinks)
            .SingleOrDefault(l => ReferenceEquals(l.Item.Tag, key));
     return(link != null);
 }
Example #3
0
 protected override void OnClosing(CancelEventArgs e)
 {
     base.OnClosing(e);
     if (DialogResult == DialogResult.OK)
     {
         if (role == DialogRole.New)
         {
             navBar.BeginUpdate();
             NavBarGroup    group = NavBarHelper.GetGroupByName(cbeGroup.Text, navBar);
             NavBarItem     item  = new NavBarItem(teCaption.Text);
             NavBarItemLink link  = group.ItemLinks.Add(item);
             group.Expanded      = true;
             item.Tag            = ObjectHelper.GetCorrectUrl(heLink.Text);
             navBar.SelectedLink = link;
             navBar.EndUpdate();
         }
         else
         {
             CurrentItem.Caption = teCaption.Text;
             CurrentItem.Tag     = ObjectHelper.GetCorrectUrl(heLink.Text);
             if (CurrentGroup.Caption != cbeGroup.Text)
             {
                 navBar.BeginUpdate();
                 NavBarGroup group = NavBarHelper.GetGroupByName(cbeGroup.Text, navBar);
                 group.Expanded = true;
                 NavBarItemLink link = group.ItemLinks.Add(CurrentItem);
                 CurrentGroup.ItemLinks.Remove(navBar.SelectedLink);
                 navBar.SelectedLink = link;
                 NavBarHelper.DeleteEmptyGroup(navBar);
                 navBar.EndUpdate();
             }
         }
     }
 }
Example #4
0
        public void CheckSelectedItem(NavBarItemLink link, object moduledata = null)
        {
            //try
            //{
            var navmoduleobject = link?.Item.Tag as NavModuleObject;
            if (navmoduleobject == null) return;
            var firstshow = navmoduleobject.Module == null;
            Ribbon.UnMergeRibbon();
            //以上没问题
            if (firstshow)
            {
                SplashScreenManager.ShowForm(this.Ribbon.FindForm(), typeof(waitForm), false, true);
                //if (SplashScreenManager.Default == null)
                //{
                //    SplashScreenManager.ShowForm(this.Ribbon.FindForm(), typeof(waitForm), false, true);
                //}
                var constructureInfo = navmoduleobject.ModuleType.GetConstructor(Type.EmptyTypes);
                if (constructureInfo != null)
                {
                    navmoduleobject.Module = constructureInfo.Invoke(null) as BaseModule;
                    navmoduleobject.Module?.InitModule();
                }
                if (SplashScreenManager.Default == null) return;
                //以上代码存在问题
                var frm = moduledata as Form;
                if (frm != null)
                {
                    if (SplashScreenManager.FormInPendingState)
                    {
                        SplashScreenManager.CloseForm();
                    }
                    else
                    {
                        SplashScreenManager.CloseForm(false, 500, frm);
                    }
                }
                else
                    SplashScreenManager.CloseForm();
            }
            if (navmoduleobject.Module == null) return;
            Panel.Controls.Clear();
            Panel.Controls.Add(navmoduleobject.Module);
            navmoduleobject.Module.Dock = DockStyle.Fill;
            //如果Module上有ribbon,合并
            if (navmoduleobject.Module.ChildRibbon != null)
            {
                navmoduleobject.Module.ChildRibbon.Pages[0].Text = navmoduleobject.Name;
                this.Ribbon.MergeRibbon(navmoduleobject.Module.ChildRibbon);
                int length = this.Ribbon.MergedPages.Count;
                if (length > 0)
                    this.Ribbon.SelectedPage = this.Ribbon.MergedPages[length - 1];
            }
            //}
            //catch (Exception ex)
            //{
            //    throw ex;
            //}

        }
 private void navBar_GetHint(object sender, NavBarGetHintEventArgs e)
 {
     hintGroup = e.Group;
     hintLink  = e.Link;
     if (hintLink != null)
     {
         navBar.SelectedLink = hintLink;
     }
 }
        void InitNavBarControl()
        {
            NavBarItemLink item = CadetsNavBarGroup.AddItem();

            item.Item.Name         = "ANHTTT53";
            item.Item.Caption      = "Lớp ANHTTT";
            item.Item.LinkClicked += (sender, args) => { InitGridControlCadet(item.Item.Name); };
            NavBarItemLink item1 = ManagersNavBarGroup.AddItem();

            item1.Item.Caption = "Cán Bộ Đại Đội";
        }
Example #7
0
        NavBarItemLink AddNavBarItem(NavBarGroup group, string caption, Image image, object data, Contact contact)
        {
            NavBarItem item = new NavBarItem(caption);

            item.SmallImage = image;
            item.Tag        = new NavBarData(data, contact);
            tasks.Add(item.Tag, data);
            NavBarItemLink link = group.ItemLinks.Add(item);

            item.LinkClicked += new NavBarLinkEventHandler(item_LinkClicked);
            return(link);
        }
        /// <summary>
        /// navBar鼠标按下
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void navBar_MouseDown(object sender, MouseEventArgs e)
        {
            int groupHeight = 32;

            if (e.Y <= groupHeight)
            {
                hintLink  = null;
                hintGroup = navBar.ActiveGroup;
            }

            Control ctrl = navBar.GetChildAtPoint(new Point(e.X, e.Y));
        }
Example #9
0
        /// <summary>
        /// 显示选中背景色
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ChatNav_CustomDrawLink(object sender, CustomDrawNavBarElementEventArgs e)
        {
            NavBarItemLink link = ((NavLinkInfoArgs)e.ObjectInfo).Link;

            if (link.State == DevExpress.Utils.Drawing.ObjectState.Selected ||
                link.State == DevExpress.Utils.Drawing.ObjectState.Hot
                )
            {
                link.Item.AppearancePressed.ForeColor = Color.White;
                // link.Item.Appearance.Options.UseFont = true;
                e.Graphics.FillRectangle(Brushes.DodgerBlue, e.RealBounds);
            }
        }
Example #10
0
        void CreateNavBarItems(NavBarGroup group)
        {
            group.NavBar.AllowSelectedLink = true;
            NavBarItemLink link = AddNavBarItem(group, Properties.Resources.OwnerName, global::DevExpress.MailClient.Win.Properties.Resources.Owner, GetTasksData(null), null);

            link.Item.Appearance.Font = new Font(AppearanceObject.DefaultFont, FontStyle.Underline);
            foreach (Contact contact in TaskGenerator.Customers)
            {
                AddNavBarItem(group, contact.Name, contact.Icon, GetTasksData(contact), contact);
            }
            //link = AddNavBarItem(group, "All tasks", null, DataHelper.Tasks, null);
            group.SelectedLink = link;
            ShowData(group.SelectedLink.Item);
        }
Example #11
0
        private void AddLink(string _glink)
        {
            string[]   _names = _glink.Split(',');
            NavBarItem _nb    = new DevExpress.XtraNavBar.NavBarItem();

            _nb.Caption = _names[1];
            _nb.Name    = _names[0];
            _nb.Tag     = _names[0];

            NavBarGroup _group = GroupDict.ContainsKey(_names[2]) ? GroupDict[_names[2]] : null;

            if (_group != null)
            {
                NavBarItemLink _link = _group.ItemLinks.Add(_nb);
            }
        }
Example #12
0
        void CreateNavBarItems(NavBarGroup group)
        {
            group.NavBar.LinkSelectionMode = LinkSelectionModeType.OneInControl;
            NavBarItemLink link = AddNavBarItem(group, Properties.Resources.OwnerName, global::DevExpress.ProductsDemo.Win.Properties.Resources.Owner1, GetTasksData(null), null);

            link.Item.Appearance.Font = new Font(AppearanceObject.DefaultFont, FontStyle.Underline);
            foreach (Contact contact in TaskGenerator.Customers)
            {
                AddNavBarItem(group, contact.Name, contact.SvgIcon, GetTasksData(contact), contact);
            }
            NavBarItemLink allTasks = AddNavBarItem(group, "All tasks", null, DataHelper.Tasks, null);

            allTasks.Item.Appearance.Font = new Font(AppearanceObject.DefaultFont, FontStyle.Bold);
            group.SelectedLink            = link;
            ShowData(group.SelectedLink.Item);
        }
Example #13
0
 private void rgSpectralView_SelectedIndexChanged(object sender, EventArgs e)
 {
     try
     {
         if (rgSpectralView.Properties.Items[rgSpectralView.SelectedIndex].Tag != null)
         {
             NavBarItemLink link = new NavBarItemLink(new NavBarItem(rgSpectralView.Properties.Items[rgSpectralView.SelectedIndex].Value.ToString()));
             link.Item.Tag = rgSpectralView.Properties.Items[rgSpectralView.SelectedIndex].Tag;
             viewNavigator.ChangeSelectedItem(link, null);
         }
     }
     catch (Exception ex)
     {
         ErrorLog.Error(ex.StackTrace.ToString());
     }
 }
 /// <summary>
 /// 从所有的分组中移除指定的JID(注意:该方法未使用 lock(NavLock))
 /// </summary>
 /// <param name="jid"></param>
 private void RemoveJidOnUI(Jid jid)
 {
     foreach (NavBarGroup group in navBar.Groups)
     {
         for (int i = group.ItemLinks.Count - 1; i >= 0; i--)
         {
             NavBarItemLink link       = group.ItemLinks[i];
             NavBarItem     nbItem     = link.Item as NavBarItem;
             RosterItem     rosterItem = nbItem.Tag as RosterItem;
             //wei=>if (jid.EqualsIgnoreResource(rosterItem.Jid))
             //wei=>{
             group.ItemLinks.Remove(link);
             //wei=>}
         }
     }
 }
Example #15
0
 protected bool RunNavigationItem(NavigationItem navigationItem)
 {
     if (this._currentPane != null && !this._currentPane.CanChange())
     {
         return(false);
     }
     if (navigationItem.EventHandler != null)
     {
         CancelEventArgs e = new CancelEventArgs();
         navigationItem.EventHandler((object)navigationItem, e);
         if (e.Cancel)
         {
             return(false);
         }
     }
     if (navigationItem.AllowTabTo)
     {
         if (navigationItem.Image != null)
         {
             this.SetHeader(navigationItem.Name, navigationItem.Image);
         }
         else
         {
             this.SetHeader(navigationItem.Name, navigationItem.ImageName);
         }
     }
     foreach (NavBarGroup navBarGroup in (CollectionBase)this._mainExplorerBar.Groups)
     {
         if (navBarGroup.Tag != null && (NavigationItem)navBarGroup.Tag == navigationItem)
         {
             navBarGroup.Expanded = true;
             return(true);
         }
         foreach (NavBarItemLink navBarItemLink in (CollectionBase)navBarGroup.ItemLinks)
         {
             if (navBarItemLink.Item.Tag != null && (NavigationItem)navBarItemLink.Item.Tag == navigationItem)
             {
                 this._mainExplorerBar.SelectedLink = navBarItemLink;
                 this._currentItem = navBarItemLink;
                 return(true);
             }
         }
         this._mainExplorerBar.SelectedLink = (NavBarItemLink)null;
     }
     return(true);
 }
            public int Compare(object x, object y)
            {
                NavBarItemLink itemX = x as NavBarItemLink;
                NavBarItemLink itemY = y as NavBarItemLink;

                int valX = itemX.Item.SmallImageIndex;
                int valY = itemY.Item.SmallImageIndex;

                /*
                 * public const int STATUS_ONLINE = 0;
                 * public const int STATUS_OFFLINE = 1;
                 * public const int STATUS_UNKNOW = 2;
                 *
                 * public const int ICON_HOME = 3;
                 * public const int ICON_DEPT = 4;
                 * public const int ICON_HOME2 = 5;
                 *
                 * public const int STATUS_AWAY = 5;
                 * public const int STATUS_DND = 6;
                 * public const int STATUS_UNSUBSCRIBED = 7;
                 * public const int STATUS_XA = 8;
                 *
                 * public const int STATUS_MOBILE = 9;
                 */
                // 离线
                //wei=>if (valY == ResManager.STATUS_OFFLINE) valY = 100;
                //wei=>if (valX == ResManager.STATUS_OFFLINE) valX = 100;

                // 未订阅
                //wei=>if (valY == ResManager.STATUS_UNSUBSCRIBED) valY = 90;
                //wei=>if (valX == ResManager.STATUS_UNSUBSCRIBED) valX = 90;

                //wei=> if (valY == ResManager.STATUS_MOBILE) valY = ResManager.STATUS_ONLINE;
                //wei=>if (valX == ResManager.STATUS_MOBILE) valX = ResManager.STATUS_ONLINE;

                int result = valX.CompareTo(valY);

                // 如果状态相同,则按名称排序
                if (result == 0)
                {
                    result = itemX.Item.Caption.CompareTo(itemY.Item.Caption);
                }

                return(result);
            }
Example #17
0
        private void Carrega_Favoritos()
        {
            StringBuilder sb = new StringBuilder(300);

            sb.AppendLine("select gf.Grupo_Favorito, gf.Desc_Grupo_Favorito");
            sb.AppendLine(" from Grupos_Favoritos gf");
            sb.AppendLine("  inner join Menus_Itens_Favoritos mif on gf.grupo_favorito = gf.grupo_favorito");
            sb.AppendFormat(" where mif.usuario = {0}\r\n", Propriedades.CodigoUsuario);
            sb.AppendLine(" group by gf.Grupo_Favorito, gf.Desc_Grupo_Favorito");
            DataTable dt_grupo = SQL.Select(sb.ToString(), "x", false);

            if (dt_grupo.Rows.Count > 0)
            {
                this.dock_Favoritos.Visibility = DockVisibility.Visible;
            }

            foreach (DataRow row in dt_grupo.Select())
            {
                //-- Adiciona o grupo.
                NavBarGroup nbg = new NavBarGroup(row["Desc_Grupo_Favorito"].ToString());
                nbg.Tag      = Convert.ToInt32(row["Grupo_Favorito"]);
                nbg.Expanded = true;
                navBar_Favoritos.Groups.Add(nbg);

                //-- Verifica os itens e adiciona.
                sb = new StringBuilder(300);
                sb.AppendLine("select mi.Descricao, mi.namespace, mi.formulario");
                sb.AppendLine(" from Menus_Itens_Favoritos mif");
                sb.AppendLine("  inner join menus_itens mi on mi.menu_item = mif.Menu_item");
                sb.AppendFormat(" where mif.grupo_favorito = {0}\r\n", row["Grupo_Favorito"]);
                sb.AppendFormat("     and mif.usuario = {0}\r\n", Propriedades.CodigoUsuario);
                DataTable dt_Itens = SQL.Select(sb.ToString(), "x", false);

                foreach (DataRow row_Item in dt_Itens.Select())
                {
                    NavBarItemLink ln = nbg.AddItem();
                    ln.Item.SmallImage   = this.toolFav.Images[0];
                    ln.Item.Caption      = row_Item["Descricao"].ToString();
                    ln.Item.LinkClicked += new NavBarLinkEventHandler(Item_LinkClicked);
                    ln.Item.Tag          = string.Format("{0};{1}"
                                                         , row_Item["namespace"]
                                                         , row_Item["formulario"]);
                }
            }
        }
Example #18
0
        internal static SecurityControlBase Show(NavBarItemLink pItem, Control pContainer)
        {
            SecurityControlBase wSecurityControl = Get(pItem);

            AddtoPanel(wSecurityControl, pContainer);
            try
            {
                wSecurityControl.Initialize();
            }
            catch (Exception ex)
            {
                pContainer.Controls.Clear();
                throw ex;
            }


            return(wSecurityControl);
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            const int GroupCount = 7;
            const int ItemCount  = 10;

            navBarControl1.Groups.Clear();
            for (int i = 0; i < GroupCount; i++)
            {
                NavBarGroup group = navBarControl1.Groups.Add();
                group.Caption  = "Group " + i.ToString();
                group.Expanded = true;
                for (int j = 0; j < ItemCount; j++)
                {
                    NavBarItemLink link = group.AddItem();
                    link.Item.Caption = "Item " + j.ToString();
                }
            }
        }
Example #20
0
        /// <summary>刷新场景图片</summary>
        private void FreshSceneItem(NavBarItemLink narBarItemLink)
        {
            bool   isExistThumbnail = true;
            string itemPath         = FileHelper.GetFileAbsolutePath("Resources\\") + "item.png";
            string sceneName        = narBarItemLink.Caption;
            string pathName         = FileHelper.GetFileAbsolutePath("CombVideos\\") + sceneName + ".mp4";
            string imagePath        = FileHelper.GetFileAbsolutePath("VideoThumbnails\\") + sceneName + ".jpg";

            if (!File.Exists(imagePath))
            {
                isExistThumbnail = VideoHelper.CreateThumbnail(pathName, imagePath);
            }
            Image  image = isExistThumbnail ? Image.FromFile(imagePath) : Image.FromFile(itemPath);
            Bitmap bmp   = new Bitmap(image);

            image.Dispose();
            narBarItemLink.Item.LargeImage = bmp;
        }
Example #21
0
        public void DeleteGroupItem(int barIndex, string groupName, string itemName)
        {
            if (!IsCorrectIndex(barIndex))
            {
                return;
            }
            NavBarControl bar   = GetNavBarByIndex(barIndex);
            NavBarGroup   group = GetNavBarGroupByName(bar, groupName);

            if (group == null)
            {
                return;
            }
            NavBarItemLink item = GetItemLinkByName(group, itemName);

            if (item == null)
            {
                return;
            }
            group.ItemLinks.Remove(item);
        }
Example #22
0
        /// <summary>
        /// 加载窗体
        /// </summary>
        private void InitForm()
        {
            string dbserver = string.Empty;

            if (dao_table.GetDBcon().dbType == Sephiroth.Infrastructure.DataPersistence.Dapper.DBcon.dbtype.Oracle)
            {
                dbserver = ConfigurationManager.AppSettings["dbserver"].ToString();
            }
            var tablename = dao_table.GetThisAllTable(dbserver);
            var items     = tablename.OrderBy(x => x.TABLE_NAME)
                            .Select(x =>
            {
                var nbi = new NavBarItemLink(new NavBarItem
                {
                    Name    = x.TABLE_NAME,
                    Caption = x.TABLE_NAME,
                });
                nbi.Item.LinkClicked += (send, e) =>
                {
                    //判断当前页面是否已经打开
                    var pindex = this.xtraTabbedMdiManager1.Pages.FirstOrDefault(page => x.TABLE_NAME.Equals(page.Text));
                    //选中
                    if (pindex != null)
                    {
                        this.xtraTabbedMdiManager1.SelectedPage = pindex;
                        return;
                    }
                    //创建新页面
                    TableForm doc = new TableForm(x);

                    doc.Text        = x.TABLE_NAME;
                    doc.WindowState = FormWindowState.Maximized;
                    doc.MdiParent   = this;
                    doc.Show();
                };
                return(nbi);
            }).ToArray();

            this.nbg_table.ItemLinks.AddRange(items);
        }
Example #23
0
        /// <summary>视频合并操作</summary>
        /// <param name="narBarItemLink"></param>
        private void VideoCombine(NavBarItemLink narBarItemLink)
        {
            if (_sceneVideoInfoList.Count == 0)
            {
                MessageBox.Show("请添加视频");
                return;
            }
            //等待窗口调用
            ShowMessage();
            foreach (var videoInfo in _sceneVideoInfoList)
            {
                string cmdConvert;//转换命令
                string convertVideoName = FileHelper.GetFileAbsolutePath("SourceVideos\\") + videoInfo.VideoName + ".mp4";
                string tempVideoName    = FileHelper.GetFileAbsolutePath("SourceVideos\\") + videoInfo.VideoName + ".ts";
                if (!videoInfo.VideoFormat.Equals(".mp4"))
                {
                    cmdConvert = VideoHelper.ConvertToMp4Cmd(videoInfo.VideoPath, convertVideoName);
                    VideoHelper.RunFFMpeg(_ffmpegPath, cmdConvert);
                }
                //文件格式转换mp4->mpegts
                cmdConvert = VideoHelper.Mp4ToTsCmd(convertVideoName, tempVideoName);
                VideoHelper.RunFFMpeg(_ffmpegPath, cmdConvert);
            }
            string itemCaption = narBarItemLink.Caption;

            //创建或更新视频列表.txt
            VideoHelper.CreateOrUpdateVideoList(_sceneVideoInfoList, itemCaption);
            //视频合并命令
            string cmdCombine = VideoHelper.GetCombineCmd(_sceneVideoInfoList, itemCaption);

            if (VideoHelper.RunFFMpeg(_ffmpegPath, cmdCombine))
            {
                //刷新当前场景的截图
                FreshSceneItem(narBarItemLink);
                VideoHelper.DeleteTempVideos(_sceneVideoInfoList);
                simpleButtonCombine.Visible = false;
            }
            HideMessage();
        }
Example #24
0
        private void VideoCombine1(NavBarItemLink narBarItemLink)
        {
            if (_sceneVideoInfoList.Count == 0)
            {
                MessageBox.Show("请添加视频");
                return;
            }
            //等待窗口调用
            ShowMessage();
            for (int i = 0; i < _sceneVideoInfoList.Count; i++)
            {
                SplashScreenManager.Default.SetWaitFormCaption("正在处理第" + (i + 1) + "个视频,请稍后...");
                SplashScreenManager.Default.SetWaitFormCaption("正在处理第" + (i + 1) + "个视频,请稍后...");
                VideoInfo videoInfo = _sceneVideoInfoList[i];
                string    cmdConvert;//转换命令
                string    convertVideoName = FileHelper.GetFileAbsolutePath("SourceVideos\\") + videoInfo.VideoName + ".mp4";
                string    tempVideoName    = FileHelper.GetFileAbsolutePath("SourceVideos\\") + videoInfo.VideoName + ".ts";
                if (!videoInfo.VideoFormat.Equals(".mp4"))
                {
                    cmdConvert = VideoHelper.ConvertToMp4Cmd(videoInfo.VideoPath, convertVideoName);
                    VideoHelper.RunFFMpeg(_ffmpegPath, cmdConvert);
                }
                //文件格式转换mp4->mpegts
                cmdConvert = VideoHelper.Mp4ToTsCmd(convertVideoName, tempVideoName);
                VideoHelper.RunFFMpeg(_ffmpegPath, cmdConvert);
            }
            string itemCaption = narBarItemLink.Caption;

            //创建或更新视频列表.txt
            VideoHelper.CreateOrUpdateVideoList(_sceneVideoInfoList, itemCaption);
            //视频合并命令
            string cmdCombine = VideoHelper.GetCombineCmd(_sceneVideoInfoList, itemCaption);

            VideoHelper.RunFFMpeg(_ffmpegPath, cmdCombine);
            //刷新当前场景的截图
            FreshSceneItem(narBarItemLink);
            VideoHelper.DeleteTempVideos(_sceneVideoInfoList);
            HideMessage();
        }
Example #25
0
        /// <summary>
        /// 注销登录
        /// </summary>
        public void Logout()
        {
            bbiUser.Caption = Program.infoResource.GetLocalizedString(InfoId.Tourist);
            UserName        = bbiUser.Caption;
            //修改视图权限
            //Program.permissionManager.ActivePermission = 3;
            //Program.permissionManager.ApplyPermission(this);
            //修改按钮为未选中状态
            if (activeBarItem != null && activeBarItem.ImageOptions.DisabledLargeImage != null)
            {
                activeBarItem.ImageOptions.LargeImage = activeBarItem.ImageOptions.DisabledLargeImage;
                activeBarItem.ImageOptions.Image      = activeBarItem.ImageOptions.LargeImage;
            }
            //回到实时监测界面
            activeBarItem = bbiRealtimeMonitoring;
            NavBarItemLink link = new NavBarItemLink(new NavBarItem(bbiRealtimeMonitoring.Name));

            link.Item.Tag = bbiRealtimeMonitoring.Tag;
            modulesNavigator.ChangeSelectedItem(link, null);
            //200215注销按钮不可见
            bbiLogout2.Visibility = BarItemVisibility.Never;
            //200215弹窗关闭
            FormCollection collection = Application.OpenForms;

            for (int i = Application.OpenForms.Count - 1; i > -1; i--)
            {
                try
                {
                    if (Application.OpenForms[i] != this)
                    {
                        Application.OpenForms[i].Close();
                    }
                }
                catch { }
            }
        }
Example #26
0
        internal static SecurityControlBase Show(NavBarItemLink pItem, Control pContainer)
        {
            SecurityControlBase wSecurityControl = Get(pItem);

            AddtoPanel(wSecurityControl, pContainer);
            try
            {
                wSecurityControl.Initialize();
            }
            catch (Exception ex)
            {
                pContainer.Controls.Clear();
                throw ex;


            }


            return wSecurityControl;
        }
Example #27
0
        public void ChangeSelectedItem(NavBarItemLink link, object moduleData) {
            bool allowSetVisiblePage = true;
            NavBarGroupTagObject groupObject = link.Item.Tag as NavBarGroupTagObject;
            if (groupObject == null)
                return;
            List<RibbonPage> deferredPagesToShow = new List<RibbonPage>();
            foreach (RibbonPage page in ribbon.Pages) {
                if (!string.IsNullOrEmpty(string.Format("{0}", page.Tag))) {
                    bool isPageVisible = groupObject.Name.Equals(page.Tag);
                    if (isPageVisible != page.Visible && isPageVisible)
                        deferredPagesToShow.Add(page);
                    else
                        page.Visible = isPageVisible;
                }
                if (page.Visible && allowSetVisiblePage) {
                    //page.Text = "Home";
                    ribbon.SelectedPage = page;
                    allowSetVisiblePage = false;
                }
            }
            bool firstShow = groupObject.Module == null;
            if (firstShow) {
                if (SplashScreenManager.Default == null)
                    SplashScreenManager.ShowForm(ribbon.FindForm(), typeof(wfMain), false, true);
                ConstructorInfo constructorInfoObj = groupObject.ModuleType.GetConstructor(Type.EmptyTypes);
                if (constructorInfoObj != null) {
                    groupObject.Module = constructorInfoObj.Invoke(null) as BaseModule;
                    groupObject.Module.InitModule(ribbon, moduleData);
                }
                if (SplashScreenManager.Default != null) {
                    Form frm = moduleData as Form;
                    if (frm != null) {
                        if (SplashScreenManager.FormInPendingState)
                            SplashScreenManager.CloseForm();
                        else
                            SplashScreenManager.CloseForm(false, 500, frm);
                    }
                    else
                        SplashScreenManager.CloseForm();
                }
            }

            foreach (RibbonPage page in deferredPagesToShow) {
                page.Visible = true;
            }
            foreach (RibbonPage page in ribbon.Pages) {
                if (page.Visible) {
                    ribbon.SelectedPage = page;
                    break;
                }
            }

            if (groupObject.Module != null) {
                if (panel.Controls.Count > 0) {
                    BaseModule currentModule = panel.Controls[0] as BaseModule;
                    if (currentModule != null)
                        currentModule.HideModule();
                }
                panel.Controls.Clear();
                panel.Controls.Add(groupObject.Module);
                groupObject.Module.Dock = DockStyle.Fill;
                groupObject.Module.ShowModule(firstShow);
            }
        }
Example #28
0
 //处理item切换之前的事务
 private void navBarControl1_LinkPressed(object sender, NavBarLinkEventArgs e)
 {
     _navBarItemLink = navBarGroupVideos.SelectedLink;
 }
Example #29
0
        /// <summary>
        /// 打开窗口
        /// </summary>
        /// <param name="itemlink"></param>
        private void OpenFrm(NavBarItemLink itemlink)
        {
            if (null == itemlink||string.IsNullOrEmpty(itemlink.Caption))
                return;
            foreach (Form fr in this.MdiChildren)
            {
                fr.Close();
            }
            NameObjectList pstrans = new NameObjectList();
            pstrans["功能单元"] = itemlink.Caption;
            BindManager.setTransParam(pstrans);
            switch (itemlink.Caption)
            {
                //系统配置
                case "卡片参数配置":
                    FrmCardParam CardParam = new FrmCardParam();
                    CardParam.MdiParent = this;
                    CardParam.WindowState = FormWindowState.Maximized;
                    CardParam.Show();
                    break;
                //停车场
                case "入场记录和图像":
                    ParkMgr.FrmInQueryManage InQueryManage = new Granity.granityMgr.ParkMgr.FrmInQueryManage();
                    InQueryManage.MdiParent = this;
                    InQueryManage.WindowState = FormWindowState.Maximized;
                    InQueryManage.Show();
                    break;

                case "出场记录和图像":
                    FrmOutQueryManage OutQueryManage = new FrmOutQueryManage();
                    OutQueryManage.MdiParent = this;
                    OutQueryManage.WindowState = FormWindowState.Maximized;
                    OutQueryManage.Show();
                    break;

                case "场内停车记录":
                    ParkMgr.FrmQueryManage QueryManage = new Granity.granityMgr.ParkMgr.FrmQueryManage();
                    QueryManage.MdiParent = this;
                    QueryManage.WindowState = FormWindowState.Maximized;
                    QueryManage.Show();
                    break;
                case "操作员交接班记录":
                    FrmOper Oper = new FrmOper();
                    Oper.MdiParent = this;
                    Oper.WindowState = FormWindowState.Maximized;
                    Oper.Show();
                    break;
                case "停车场管理":
                    FrmParkStallSet ParkStallSet = new FrmParkStallSet();
                    ParkStallSet.MdiParent = this;
                    ParkStallSet.WindowState = FormWindowState.Maximized;
                    ParkStallSet.Show();
                    break;
                case "参数下载":
                    FrmDownParam EateryManage = new FrmDownParam();
                    EateryManage.MdiParent = this;
                    EateryManage.WindowState = FormWindowState.Maximized;
                    EateryManage.Show();
                    break;
                case "入场车流量统计表":
                    ParkMgr.Report.FrmIntVehicleNumberTotal VehicleNumberTotal = new Granity.granityMgr.ParkMgr.Report.FrmIntVehicleNumberTotal();
                    VehicleNumberTotal.MdiParent = this;
                    VehicleNumberTotal.WindowState = FormWindowState.Maximized;
                    VehicleNumberTotal.Show();
                    break;
                case "出场车流量统计表":
                    ParkMgr.Report.FrmCarOutTotal CarOutTotal = new Granity.granityMgr.ParkMgr.Report.FrmCarOutTotal();
                    CarOutTotal.MdiParent = this;
                    CarOutTotal.WindowState = FormWindowState.Maximized;
                    CarOutTotal.Show();
                    break;

                case "停车场收费统计表":
                    ParkMgr.Report.FrmParkTotal ParkTotal = new Granity.granityMgr.ParkMgr.Report.FrmParkTotal();
                    ParkTotal.MdiParent = this;
                    ParkTotal.WindowState = FormWindowState.Maximized;
                    ParkTotal.Show();
                    break;

                case "收费员收费统计表":
                    ParkMgr.Report.FrmOperatorTotal OperatorTotal = new Granity.granityMgr.ParkMgr.Report.FrmOperatorTotal();
                    OperatorTotal.MdiParent = this;
                    OperatorTotal.WindowState = FormWindowState.Maximized;
                    OperatorTotal.Show();
                    break;

                case "视频监控":
                    ParkMgr.FrmStationWatchingII StationWatching = new Granity.granityMgr.ParkMgr.FrmStationWatchingII();
                    //ParkMgr.FrmStatonWatchingStandard StationWatching = new Granity.granityMgr.ParkMgr.FrmStatonWatchingStandard();
                    StationWatching.WindowState = FormWindowState.Maximized;
                    StationWatching.Show();
                    break;
                case "权限设置":
                    ParkMgr.FrmRight ParkRight = new Granity.granityMgr.ParkMgr.FrmRight();
                    ParkRight.MdiParent = this;
                    ParkRight.WindowState = FormWindowState.Maximized;
                    ParkRight.Show();
                    break;
                //门禁系统
                case "有效时段":
                    BaseDicinfo.FrmEffectiveTimeList EffTime = new Granity.granityMgr.BaseDicinfo.FrmEffectiveTimeList();
                    EffTime.MdiParent = this;
                    EffTime.WindowState = FormWindowState.Maximized;
                    EffTime.Show();
                    break;
                case "设备资料":
                    Granity.granityMgr.BaseDicinfo.FrmDoorControlBaseinfo BaseInfo = new Granity.granityMgr.BaseDicinfo.FrmDoorControlBaseinfo();
                    BaseInfo.MdiParent = this;
                    BaseInfo.WindowState = FormWindowState.Maximized;
                    BaseInfo.Show();
                    break;
                case "开门记录查询":
                    Report.FrmOpenDoorRecord OpenRecord = new Report.FrmOpenDoorRecord();
                    OpenRecord.MdiParent = this;
                    OpenRecord.WindowState = FormWindowState.Maximized;
                    OpenRecord.Show();
                    break;
                case "门禁卡信息":
                    BaseDicinfo.FrmDoorCardInfo CardInfo = new Granity.granityMgr.BaseDicinfo.FrmDoorCardInfo();
                    CardInfo.MdiParent = this;
                    CardInfo.WindowState = FormWindowState.Maximized;
                    CardInfo.Show();
                    break;
                case "门禁监控":
                    FrmDoorMonitor DoorMonitor = new FrmDoorMonitor();
                    DoorMonitor.MdiParent = this;
                    DoorMonitor.WindowState = FormWindowState.Maximized;
                    DoorMonitor.Show();
                    break;
                case "门禁权限":
                    BaseDicinfo.FrmRight Right = new Granity.granityMgr.BaseDicinfo.FrmRight();
                    Right.MdiParent = this;
                    Right.WindowState = FormWindowState.Maximized;
                    Right.Show();
                    break;
                case "门用户":
                    BaseDicinfo.FrmDorUsers dorUser = new Granity.granityMgr.BaseDicinfo.FrmDorUsers();
                    dorUser.MdiParent = this;
                    dorUser.WindowState = FormWindowState.Maximized;
                    dorUser.Show();
                    break;
                case "门禁管理":
                    FrmDownParam DoorManager = new FrmDownParam();
                    DoorManager.MdiParent = this;
                    DoorManager.WindowState = FormWindowState.Maximized;
                    DoorManager.Show();
                    break;
                case "停车场卡信息":
                    ParkMgr.FrmCarParkInfo parkCard = new Granity.granityMgr.ParkMgr.FrmCarParkInfo();
                    parkCard.MdiParent = this;
                    parkCard.WindowState = FormWindowState.Maximized;
                    parkCard.Show();
                    break;
                //卡务中心
                case "发行管理":
                    FrmCardMakeS CardMakeS = new FrmCardMakeS();
                    CardMakeS.MdiParent = this;
                    CardMakeS.WindowState = FormWindowState.Maximized;
                    CardMakeS.Show();
                    break;
                case "卡片管理":
                    FrmCardManager CardManager = new FrmCardManager();
                    CardManager.MdiParent = this;
                    CardManager.WindowState = FormWindowState.Maximized;
                    CardManager.Show();
                    break;
                case "发行器设置":
                    FrmDevSet DevSet = new FrmDevSet();
                    DevSet.MdiParent = this;
                    DevSet.WindowState = FormWindowState.Maximized;
                    DevSet.Show();
                    break;
                case "卡片发行记录":
                    FrmCardMakeRpt CardMakeRpt = new FrmCardMakeRpt();
                    CardMakeRpt.MdiParent = this;
                    CardMakeRpt.WindowState = FormWindowState.Maximized;
                    CardMakeRpt.Show();
                    break;
                case "卡片充值记录":
                    FrmCardPayRep CardPayRpt = new FrmCardPayRep();
                    CardPayRpt.MdiParent = this;
                    CardPayRpt.WindowState = FormWindowState.Maximized;
                    CardPayRpt.Show();
                    break;
                case "卡片延期记录":
                    FrmCardDelayRpt CardDelayRpt = new FrmCardDelayRpt();
                    CardDelayRpt.MdiParent = this;
                    CardDelayRpt.WindowState = FormWindowState.Maximized;
                    CardDelayRpt.Show();
                    break;
                case "退卡记录":
                    FrmCardQuitRtp CardQuitRpt = new FrmCardQuitRtp();
                    CardQuitRpt.MdiParent = this;
                    CardQuitRpt.WindowState = FormWindowState.Maximized;
                    CardQuitRpt.Show();
                    break;
                case "卡片挂失解挂记录":
                    FrmCardLostRpt CardLostRpt = new FrmCardLostRpt();
                    CardLostRpt.MdiParent = this;
                    CardLostRpt.WindowState = FormWindowState.Maximized;
                    CardLostRpt.Show();
                    break;
                //考勤系统
                case "部门排班查询":
                    FrmDeptScheduleRpt DeptScheduleRpt = new FrmDeptScheduleRpt();
                    DeptScheduleRpt.MdiParent = this;
                    DeptScheduleRpt.WindowState = FormWindowState.Maximized;
                    DeptScheduleRpt.Show();
                    break;
                case "员工打卡查询":
                    FrmHitCardRpt HitCardRpt = new FrmHitCardRpt();
                    HitCardRpt.MdiParent = this;
                    HitCardRpt.WindowState = FormWindowState.Maximized;
                    HitCardRpt.Show();
                    break;
                case "法定假日维护":
                    FrmHolidaySet HolidaySet = new FrmHolidaySet();
                    HolidaySet.MdiParent = this;
                    HolidaySet.WindowState = FormWindowState.Maximized;
                    HolidaySet.Show();
                    break;
                case "部门休息日维护":
                    FrmDeptRest DeptRest = new FrmDeptRest();
                    DeptRest.MdiParent = this;
                    DeptRest.WindowState = FormWindowState.Maximized;
                    DeptRest.Show();
                    break;
                case "班制定义":
                    FrmClass Class = new FrmClass();
                    Class.MdiParent = this;
                    Class.WindowState = FormWindowState.Maximized;
                    Class.Show();
                    break;
                case "部门班制":
                    FrmDeptClass DeptClass = new FrmDeptClass();
                    DeptClass.MdiParent = this;
                    DeptClass.WindowState = FormWindowState.Maximized;
                    DeptClass.Show();
                    break;
                case "考勤登记":
                    FrmEmployeeRegister Register = new FrmEmployeeRegister();
                    Register.MdiParent = this;
                    Register.WindowState = FormWindowState.Maximized;
                    Register.Show();
                    break;
                case "部门排班":
                    FrmMakeClass makeClass = new FrmMakeClass();
                    makeClass.MdiParent = this;
                    makeClass.WindowState = FormWindowState.Maximized;
                    makeClass.Show();
                    break;
                case "考勤明细查询":
                    Granity.granityMgr.CheckWork.Report.FrmCheckWorkList CheckWork = new Granity.granityMgr.CheckWork.Report.FrmCheckWorkList();
                    CheckWork.MdiParent = this;
                    CheckWork.WindowState = FormWindowState.Maximized;
                    CheckWork.Show();
                    break;
                //消费
                case "餐厅维护":
                    FrmRestaurant Restaurant = new FrmRestaurant();
                    Restaurant.MdiParent = this;
                    Restaurant.WindowState = FormWindowState.Maximized;
                    Restaurant.Show();
                    break;
                case "补助管理":
                    FrmAddMoney AddMoney = new FrmAddMoney();
                    AddMoney.MdiParent = this;
                    AddMoney.WindowState = FormWindowState.Maximized;
                    AddMoney.Show();
                    break;
                case "现金收入登记":
                    FrmCashRegisterII cashReg = new FrmCashRegisterII();
                    cashReg.MdiParent = this;
                    cashReg.WindowState = FormWindowState.Maximized;
                    cashReg.Show();
                    break;
                case "消费查询":
                    FrmConsumeRecord ConsumeRecord = new FrmConsumeRecord();
                    ConsumeRecord.MdiParent = this;
                    ConsumeRecord.WindowState = FormWindowState.Maximized;
                    ConsumeRecord.Show();
                    break;
                case "充值补助退款查询":
                    FrmAddReduceMoney AddReduceMoney = new FrmAddReduceMoney();
                    AddReduceMoney.MdiParent = this;
                    AddReduceMoney.WindowState = FormWindowState.Maximized;
                    AddReduceMoney.Show();
                    break;
                case "消费统计查询":
                    FrmConsumeSum ConsumeSum = new FrmConsumeSum();
                    ConsumeSum.MdiParent = this;
                    ConsumeSum.WindowState = FormWindowState.Maximized;
                    ConsumeSum.Show();
                    break;
                case "消费机收入汇总":
                    FrmCosumeMac ConsumeMac = new FrmCosumeMac();
                    ConsumeMac.MdiParent = this;
                    ConsumeMac.WindowState = FormWindowState.Maximized;
                    ConsumeMac.Show();
                    break;
                case "现金报表":
                    FrmCashSum CashSum = new FrmCashSum();
                    CashSum.MdiParent = this;
                    CashSum.WindowState = FormWindowState.Maximized;
                    CashSum.Show();
                    break;
                case "消费机管理":
                    FrmDownParam eateryManage = new FrmDownParam();
                    eateryManage.MdiParent = this;
                    eateryManage.WindowState = FormWindowState.Maximized;
                    eateryManage.Show();
                    break;
                case "消费监控":
                    FrmEateryMonitor frmeaterymtr = new FrmEateryMonitor();
                    frmeaterymtr.MdiParent = this;
                    frmeaterymtr.WindowState = FormWindowState.Maximized;
                    frmeaterymtr.Show();
                    break;
                // 用户管理
                case "用户信息":
                    FrmUserManager UserManager = new FrmUserManager();
                    UserManager.MdiParent = this;
                    UserManager.WindowState = FormWindowState.Maximized;
                    UserManager.Show();
                    break;
                case "公司员工":
                    FrmEmployees Employees = new FrmEmployees();
                    Employees.MdiParent = this;
                    Employees.WindowState = FormWindowState.Maximized;
                    Employees.Show();
                    break;
                case "角色定义":
                    FrmSysRoles role = new FrmSysRoles();
                    role.MdiParent = this;
                    role.WindowState = FormWindowState.Maximized;
                    role.Show();
                    break;
                case "修改密码":

                    FrmUpdatePass pass = new FrmUpdatePass();
                    pass.ShowDialog();
                    break;
                //case "用户信息":
                //    FrmSysUsers ps= new FrmSysUsers();
                //    ps.MdiParent = this;
                //    ps.WindowState = FormWindowState.Maximized;
                //    ps.Show();
                //    break;
            }
        }
Example #30
0
 protected override void RaiseLinkClicked(NavBarItemLink link)
 {
     WaitDialogHelper.Show();
     try
     {
         if ((this._link != null) && (this._link.Length > 0))
         {
             new LinkCommand(this.Link).Run();
         }
         else if (StringHelper.IsNull(this._class))
         {
             BoxService.OpenBox(this._boxName);
             this.Refresh();
         }
         else
         {
             ICommand command2 = (ICommand) Assembly.GetExecutingAssembly().CreateInstance(this._class, true);
             if (command2 == null)
             {
                 Type type = Type.GetType(this._class);
                 if (type != null)
                 {
                     command2 = (ICommand) Activator.CreateInstance(type);
                 }
             }
             if (command2 != null)
             {
                 command2.Owner = this;
                 command2.Run();
             }
         }
     }
     finally
     {
         WaitDialogHelper.Close();
     }
     base.RaiseLinkClicked(link);
 }
Example #31
0
 internal static SecurityControlBase Get(NavBarItemLink pItem)
 {
     bool isNew;
     return Get(pItem.Item.Tag.ToString(), out isNew);
 }
Example #32
0
 private void barButtonItemSuaNhom_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
 {
     if (navBarControl1.SelectedLink != null)
     {
         Selected_NavBarItem = new NavBarItem();
         Selected_NavBarItem = navBarControl1.SelectedLink.Item;
         List<NavBarItem> ListItem = new List<NavBarItem>();
         SelectItem = navBarControl1.SelectedLink;
         foreach (NavBarItem item in navBarControl1.Items)
             ListItem.Add(item);
         frmThemNhom frm = new frmThemNhom(Selected_NavBarItem, Rows_Field_Names, ListItem, true);
         frm.Sua_Nhom += new frmThemNhom.Refresh_Sua_Nhom(UpdateSuaNhom);
         ProtocolForm.ShowModalDialog(this, frm);
     }
     else
         PLMessageBox.ShowNotificationMessage("Vui lòng chọn nhóm cần sửa!");
 }
Example #33
0
        private void LoadNav()
        {
            Dictionary <string, bool> dict = new Dictionary <string, bool>();

            foreach (NavBarGroup nbg in navBarControl1.Groups)
            {
                dict.Add(nbg.Caption, nbg.Expanded);
            }
            navBarControl1.Groups.Clear();
            var groups = Access.UnitType.GetUnitTypeList();

            NavBarGroup nb2 = new NavBarGroup("数据源");
            List <Model.T_BASE_SJYPZModel> sjys = Access.DataSource.GetAllSJYPZ();

            foreach (Model.T_BASE_SJYPZModel mm in sjys)
            {
                NavBarItem    ni  = new NavBarItem(mm.PZMC);
                NavBarItemTag nbt = new NavBarItemTag(mm.PZMC, "Careysoft.Dotnet.Tools.SqlData.ManageClient.DataSource.FormMain", "Careysoft.Dotnet.Tools.SqlData.ManageClient.exe", mm.PZBM);
                ni.Tag          = nbt;
                ni.LinkClicked += new NavBarLinkEventHandler(ShowForm);
                navBarControl1.Items.Add(ni);
                NavBarItemLink nil = new NavBarItemLink(ni);
                nb2.ItemLinks.Add(nil);
            }
            nb2.Expanded = dict.ContainsKey("数据源") ? dict["数据源"] : true;//true;
            navBarControl1.Groups.Add(nb2);

            NavBarGroup nb3 = new NavBarGroup("任务组");
            List <Model.T_D_TASK_MSTModel> tasks = Access.Task.GetAllTask();

            foreach (Model.T_D_TASK_MSTModel mm in tasks)
            {
                NavBarItem    ni  = new NavBarItem(mm.TASKNAME);
                NavBarItemTag nbt = new NavBarItemTag(mm.TASKNAME, "Careysoft.Dotnet.Tools.SqlData.ManageClient.Task.FormMain", "Careysoft.Dotnet.Tools.SqlData.ManageClient.exe", mm.ID);
                ni.Tag          = nbt;
                ni.LinkClicked += new NavBarLinkEventHandler(ShowForm);
                navBarControl1.Items.Add(ni);
                NavBarItemLink nil = new NavBarItemLink(ni);
                nb3.ItemLinks.Add(nil);
            }
            nb3.Expanded = dict.ContainsKey("任务组") ? dict["任务组"] : true;
            navBarControl1.Groups.Add(nb3);

            List <Model.T_BASE_UNITTYPEModel> unittypes = Access.UnitType.GetUnitTypeList("SQLDATAS_SQLZ");
            List <Model.T_D_SQLDATA_MSTModel> sqlDatas  = Access.SqlData.GetAllSqlDataList();

            foreach (Model.T_BASE_UNITTYPEModel m in unittypes)
            {
                NavBarGroup nb = new NavBarGroup(m.LXMC);
                nb.Tag = m.LXBM;
                List <Model.T_D_SQLDATA_MSTModel> slist = sqlDatas.FindAll(delegate(Model.T_D_SQLDATA_MSTModel mm) { return(mm.UNITTYPEID == m.LXBM); });
                foreach (Model.T_D_SQLDATA_MSTModel mm in slist)
                {
                    NavBarItem    ni  = new NavBarItem(mm.SQLDATANAME);
                    NavBarItemTag nbt = new NavBarItemTag(mm.SQLDATANAME, "Careysoft.Dotnet.Tools.SqlData.ManageClient.SqlData.FormMain", "Careysoft.Dotnet.Tools.SqlData.ManageClient.exe", mm.ID);
                    ni.Tag          = nbt;
                    ni.LinkClicked += new NavBarLinkEventHandler(ShowForm);
                    navBarControl1.Items.Add(ni);
                    NavBarItemLink nil = new NavBarItemLink(ni);
                    if (mm.SFJY == 1)
                    {
                        nil.Item.Appearance.ForeColor = Color.DarkGray;
                    }
                    if (mm.SQLDATANAME.IndexOf("(") > 0)
                    {
                        nil.Item.Appearance.ForeColor = Color.FromArgb(255, 128, 128);
                    }
                    nb.ItemLinks.Add(nil);
                }
                nb.Expanded = dict.ContainsKey(m.LXMC) ? dict[m.LXMC] : true;;
                navBarControl1.Groups.Add(nb);
            }
        }
        private NavBarItemLink FindNearItemLink(bool forward)
        {
            NavBarItemLink link = SelectedLink;
            NavBarGroup    group;

            if (link == null)
            {
                group = NextGroup(null, forward);
            }
            else
            {
                group = link.Group;
            }
            if (group == null)
            {
                return(null);
            }
            NavBarGroup startGroup = group;
            int         i;

            if (link != null)
            {
                i = group.ItemLinks.IndexOf(link);
            }
            else
            {
                i = (forward) ? -1 : group.ItemLinks.Count;
            }
            bool repeat = false;

            do
            {
                if (forward)
                {
                    if (i < group.ItemLinks.Count - 1)
                    {
                        return(group.ItemLinks[i + 1]);
                    }
                    else
                    {
                        group  = NextGroup(group, forward);
                        repeat = i > 0;
                        i      = -1;
                    }
                }
                else
                {
                    if (i > 0 && group.ItemLinks.Count > 0)
                    {
                        return(group.ItemLinks[i - 1]);
                    }
                    else
                    {
                        group  = NextGroup(group, forward);
                        repeat = i < group.ItemLinks.Count - 1;
                        i      = group.ItemLinks.Count;
                    }
                }
            }while (group != startGroup || repeat);
            return(null);
        }
 protected override void RaiseLinkClicked(NavBarItemLink link)
 {
     _command.Run();
     base.RaiseLinkClicked(link);
 }
        public void InitMenuTree(NavBarControl navBarControl, string xmlPath)
        {
            var doc             = XDocument.Load(xmlPath);
            var menuGroups      = doc.Root.Elements("MenuGroup");
            var navBarGroupList = new List <NavBarGroup>();

            if (doc.Root.Attribute("IsClear").Value.ToLower().Equals("true"))
            {
                navBarControl.Items.Clear();
                navBarControl.Groups.Clear();
            }
            menuGroups.ToList().ForEach(elementGroup =>
            {
                NavBarGroup navBarGroup = null;
                var groupEnumerator     = navBarControl.Groups.GetEnumerator();
                while (groupEnumerator.MoveNext())
                {
                    var navBarGroupTemp = groupEnumerator.Current as NavBarGroup;
                    if (navBarGroupTemp.Name == elementGroup.Attribute("Name").Value)
                    {
                        navBarGroup = navBarGroupTemp;
                        break;
                    }
                }
                if (navBarGroup == null)
                {
                    navBarGroup = new NavBarGroup()
                    {
                        Name     = elementGroup.Attribute("Name").Value,
                        Caption  = elementGroup.Attribute("Describe").Value,
                        Expanded = elementGroup.Attribute("Expanded") == null ? false : (elementGroup.Attribute("Expanded").Value.ToLower().Equals("true") ? true : false)
                    };
                    navBarGroupList.Add(navBarGroup);
                }
                var menuItems = elementGroup.Elements("MenuItem").Where(item => item.Attribute("IsShowing").Value.ToLower().Equals("true"));
                menuItems.ToList().ForEach(elementItem =>
                {
                    NavBarItem navBarItem = null;
                    var itemEnumerator    = navBarControl.Items.GetEnumerator();
                    while (itemEnumerator.MoveNext())
                    {
                        var navBarItemTemp = itemEnumerator.Current as NavBarItem;
                        if (navBarItemTemp.Name == elementItem.Attribute("Name").Value)
                        {
                            navBarItem = navBarItemTemp;
                            break;
                        }
                    }
                    if (navBarItem == null)
                    {
                        navBarItem = new NavBarItem()
                        {
                            Name    = elementItem.Attribute("Name").Value,
                            Caption = elementItem.Attribute("Describe").Value,
                            //SmallImage = Image.FromFile(elementItem.Attribute("IconPath").Value),
                            Tag = new MenuActionArgs
                            {
                                Type      = elementItem.Attribute("Type").Value,
                                NameSpace = elementItem.Attribute("NameSpace").Value,
                                ClassName = elementItem.Attribute("ClassName").Value,
                                Describe  = elementItem.Attribute("Describe").Value
                            }
                        };
                        navBarItem.LinkClicked += NavBarItemLinkClicked;
                        var navBarItemLink      = new NavBarItemLink(navBarItem);
                        navBarControl.Items.Add(navBarItem);
                        navBarGroup.ItemLinks.Add(navBarItemLink);
                    }
                });
            });
            navBarControl.Groups.AddRange(navBarGroupList.ToArray());
        }
Example #37
0
        public void ChangeSelectedItem(NavBarItemLink link, object moduleData)
        {
            bool allowSetVisiblePage         = true;
            NavBarGroupTagObject groupObject = link.Item.Tag as NavBarGroupTagObject;

            if (groupObject == null)
            {
                return;
            }
            List <RibbonPage> deferredPagesToShow = new List <RibbonPage>();

            foreach (RibbonPage page in ribbon.Pages)
            {
                if (!string.IsNullOrEmpty(string.Format("{0}", page.Tag)))
                {
                    bool isPageVisible = groupObject.Name.Equals(page.Tag);
                    if (isPageVisible != page.Visible && isPageVisible)
                    {
                        deferredPagesToShow.Add(page);
                    }
                    else
                    {
                        page.Visible = isPageVisible;
                    }
                }
                if (page.Visible && allowSetVisiblePage)
                {
                    //page.Text = "Home";
                    ribbon.SelectedPage = page;
                    allowSetVisiblePage = false;
                }
            }
            bool firstShow = groupObject.Module == null;

            if (firstShow)
            {
                if (SplashScreenManager.Default == null)
                {
                    SplashScreenManager.ShowForm(ribbon.FindForm(), typeof(DevExpress.ProductsDemo.Win.Forms.wfMain), false, true);
                }
                ConstructorInfo constructorInfoObj = groupObject.ModuleType.GetConstructor(Type.EmptyTypes);
                if (constructorInfoObj != null)
                {
                    try {
                        groupObject.Module = constructorInfoObj.Invoke(null) as BaseModule;
                        groupObject.Module.InitModule(ribbon, moduleData);
                        _currentModuleName = link.Caption;
                    } catch (Exception e) {
                        var    entryAsm = Assembly.GetEntryAssembly();
                        string msg      = string.Format("Error on Showing Module: {0}\r\nPrevModule: {1}\r\nStartUp: {2}",
                                                        link.Caption, _currentModuleName, (entryAsm != null ? entryAsm.Location : string.Empty));
                        throw new ApplicationException(msg, e);
                    }
                }
                if (SplashScreenManager.Default != null)
                {
                    Form frm = moduleData as Form;
                    if (frm != null)
                    {
                        if (SplashScreenManager.FormInPendingState)
                        {
                            SplashScreenManager.CloseForm();
                        }
                        else
                        {
                            SplashScreenManager.CloseForm(false, 500, frm);
                        }
                    }
                    else
                    {
                        SplashScreenManager.CloseForm();
                    }
                }
            }
            ribbon.ColorScheme = groupObject.RibbonScheme;
            foreach (RibbonPage page in deferredPagesToShow)
            {
                page.Visible = true;
            }
            foreach (RibbonPage page in ribbon.Pages)
            {
                if (page.Visible)
                {
                    ribbon.SelectedPage = page;
                    break;
                }
            }

            if (groupObject.Module != null)
            {
                if (panel.Controls.Count > 0)
                {
                    BaseModule currentModule = panel.Controls[0] as BaseModule;
                    if (currentModule != null)
                    {
                        currentModule.HideModule();
                    }
                }
                panel.Controls.Clear();
                panel.Controls.Add(groupObject.Module);
                groupObject.Module.Dock = DockStyle.Fill;
                groupObject.Module.ShowModule(firstShow);
            }
        }