Beispiel #1
0
        private static void AddChild(List<Sys_FormMaster_fom_Info> infos, TreeNodeInfo parent)
        {
            List<Sys_FormMaster_fom_Info> listSubForms = infos.Where(d => d.fom_iParentID == int.Parse(parent.Name)).ToList();

            TreeNodeInfo[] tNodes = new TreeNodeInfo[listSubForms.Count];
            parent.TreeNodeInfos = tNodes;
            if (listSubForms.Count == 0)
            {
                return;
            }

            int i = 0;
            foreach (Sys_FormMaster_fom_Info formItem in listSubForms)
            {

                TreeNodeInfo subNode = new TreeNodeInfo();
                subNode.Name = formItem.fom_iRecordID.ToString();
                subNode.Tag = formItem.fom_cExePath.ToString();
                subNode.Index = formItem.fom_iIndex;
                subNode.ImageIndex = formItem.fom_iImageIndex;
                subNode.Text = formItem.fom_cFormDesc;
                tNodes[i] = subNode;
                AddChild(infos, subNode);
                i++;
            }
        }
Beispiel #2
0
        /// <summary>
        /// 插入一个树节点
        /// </summary>
        /// <param name="pTNode">父节点</param>
        /// <param name="strText">节点文字</param>
        /// <param name="tag">节点标示符</param>
        /// <param name="name">节点名称</param>
        /// <param name="index">节点索引号</param>
        /// <returns>TreeNode</returns>
        public TreeNodeInfo InsertTreeNode(TreeNodeInfo pTNode, string text, string tag, string name, int index,int imageIndex)
        {
            if (pTNode == null)
            {
                return null;
            }

            TreeNodeInfo[] tNodes = null;
            TreeNodeInfo tNode = new TreeNodeInfo();

            tNode.Text = text;
            tNode.Tag = tag;
            tNode.Name = name;
            tNode.Index = index;
            tNode.ImageIndex = imageIndex;

            tNodes = pTNode.TreeNodeInfos;
            List<TreeNodeInfo> tNodeList=null;
            if (tNodes != null)
            {
                tNodeList = tNodes.ToList<TreeNodeInfo>();
            }
            else
            {
                tNodeList = new List<TreeNodeInfo>();
            }
            tNodeList.Add(tNode);

            pTNode.TreeNodeInfos = tNodeList.ToArray();

            return tNode;
        }
Beispiel #3
0
        public MenuForm(MainFrame mainFrame, TreeNodeInfo[] menus)
        {
            InitializeComponent();

            openMenuItemDelegate = new OpenMenuItemWithIcoDelegate(mainFrame.OpenMenuItemWithIco);

            resources = new System.ComponentModel.ComponentResourceManager(typeof(ImageButton));

            this._menus = menus;
        }
Beispiel #4
0
        public TreeNodeInfo[] GetMenuTreeNodes(CustEnum.System system)
        {
            List<Sys_FormMaster_fom_Info> infos = new List<Sys_FormMaster_fom_Info>();

            List<TreeNodeInfo> treeNodeInfoList = new List<TreeNodeInfo>();
            TreeNodeInfo rootNodeInfo = null;
            TreeNodeInfo[] treeNodeInfos = null;

            TreeNodeInfo itemNodeInfo = null;

            infos = _sysFormMasterDA.GetWinTreeNode(system.ToString());

            foreach (Sys_FormMaster_fom_Info inf in infos)
            {
                Sys_FormMaster_fom_Info info = inf;
                rootNodeInfo = new TreeNodeInfo();
                rootNodeInfo.Text = info.fom_cFormDesc;
                rootNodeInfo.Name = info.fom_cFormNumber;
                rootNodeInfo.Tag = info.fom_cExePath;
                rootNodeInfo.Index = info.fom_iIndex;

                rootNodeInfo.FileName = info.fom_iRecordID.ToString();

                TreeNodeInfo nodeInfo = null;
                info = new Sys_FormMaster_fom_Info();
                info.fom_iParentID = int.Parse(rootNodeInfo.FileName.ToString());
                foreach (var chile in _sysFormMasterDA.SearchRecords(info, "all"))
                {
                    info = chile as Sys_FormMaster_fom_Info;
                    string Name = info.fom_iRecordID.ToString();
                    nodeInfo = null;
                    nodeInfo = LocalGeneralMenu.Instance.InsertTreeNode(rootNodeInfo, info.fom_cFormDesc, info.fom_cExePath, info.fom_cFormNumber, info.fom_iIndex, info.fom_iImageIndex);
                    info = new Sys_FormMaster_fom_Info();
                    info.fom_iParentID = int.Parse(Name.ToString());
                    foreach (var q in _sysFormMasterDA.SearchRecords(info, "all"))
                    {
                        info = q as Sys_FormMaster_fom_Info;

                        if (info.fom_cFormNumber.ToString().ToUpper() == "DEMO")
                        {
                            itemNodeInfo = LocalGeneralMenu.Instance.InsertTreeNode(nodeInfo, info.fom_cFormDesc, info.fom_cExePath, info.fom_cFormNumber, info.fom_iIndex, info.fom_iImageIndex);
                            itemNodeInfo.Remark = "EXE";
                            itemNodeInfo.FileName = "WPFUI\\WPFUI.exe";
                        }
                        else
                            LocalGeneralMenu.Instance.InsertTreeNode(nodeInfo, info.fom_cFormDesc, info.fom_cExePath, info.fom_cFormNumber, info.fom_iIndex, info.fom_iImageIndex);
                    }
                }
                treeNodeInfoList.Add(rootNodeInfo);

            }
            treeNodeInfos = treeNodeInfoList.ToArray();

            return treeNodeInfos;
        }
Beispiel #5
0
 public static TreeNodeInfo[] CreateMenuTree(List<Sys_FormMaster_fom_Info> infos, int rootID)
 {
     List<Sys_FormMaster_fom_Info> rootMenus = infos.Where(d => d.fom_iParentID == rootID).ToList();
     TreeNodeInfo[] root = new TreeNodeInfo[rootMenus.Count];
     int i = 0;
     foreach (var item in rootMenus)
     {
         TreeNodeInfo rootNode = new TreeNodeInfo();
         rootNode.Name = item.fom_iRecordID.ToString();
         rootNode.Tag = item.fom_cFormNumber;
         rootNode.Index = item.fom_iIndex;
         rootNode.ImageIndex = item.fom_iImageIndex;
         rootNode.Text = item.fom_cFormDesc;
         AddChild(infos, rootNode);
         root[i] = rootNode;
         i++;
     }
     return root;
 }
Beispiel #6
0
        public MenuToolForm(DockPanel dockPanel, TreeNodeInfo parentNode, Sys_UserMaster_usm_Info userInfo)
        {
            InitializeComponent();

            this._loginFormBL = MasterBLLFactory.GetBLL<ILoginFormBL>(MasterBLLFactory.LoginForm);
            this._childrenForms = new Dictionary<string, BaseForm>();
            this._dockPanel = dockPanel;

            this._parentNode = parentNode;
            //
            this._userInfo = userInfo;
            //
            UserInformation = userInfo;

            InitializeOutlookbar(userInfo);

            this.Text = parentNode.Text;
            this.TabText = parentNode.Text;

            //TONO: 便貼停靠位置
            this.Show(this._dockPanel, DockState.DockBottom);
            this.DockState = DockState.DockBottomAutoHide;
        }
Beispiel #7
0
        /// <summary>
        /// 獲得樹節點數組
        /// </summary>
        /// <param name="treeNodeInfos"></param>
        /// <returns></returns>
        public static TreeNode[] GetTreeNodeList(TreeNodeInfo[] treeNodeInfos)
        {
            if (treeNodeInfos == null)
            {
                return null;
            }
            if (treeNodeInfos.Length == 0)
            {
                return null;
            }
            List<TreeNode> rootNodeList = new List<TreeNode>();
            TreeNode rootNode=null;
            TreeNode[] tNodes=null;
            TreeNodeInfo[] nodeInfos = null;
            for (int i = 0; i < treeNodeInfos.Length; i++)
            {
                rootNode = new TreeNode();
                rootNode.Text = treeNodeInfos[i].Text;
                rootNode.Tag = treeNodeInfos[i].Tag;
                rootNode.Name = treeNodeInfos[i].Name;
                //rootNode.Index = treeNodeInfos[i].Index;
                nodeInfos = treeNodeInfos[i].TreeNodeInfos;
                if (nodeInfos != null)
                {
                    tNodes = GetTreeNodeList(nodeInfos);
                    if (tNodes != null)
                    {
                        rootNode.Nodes.AddRange(tNodes);
                    }
                }
                rootNodeList.Add(rootNode);
            }

            return rootNodeList.ToArray();
        }
Beispiel #8
0
        private void ShowMenuForm(TreeNodeInfo[] treeNodeInfos)
        {
            if (treeNodeInfos == null || treeNodeInfos.Length == 0)
            {
                return;
            }

            if (_menuFrm == null)
            {
                _menuFrm = new MenuForm(this, treeNodeInfos);
                _menuFrm.TopLevel = false;
                _menuFrm.Parent = this._mainFrameBase.ContentPanel;
                _menuFrm.FormBorderStyle = FormBorderStyle.None;
                _menuFrm.SystemVersion = this._ControlCenter.SystemVersion;
                _menuFrm.Show();
                _menuFrm.BringToFront();
                //_menuFrm.CloseLoading();

                this._mForms.Add(_menuFrm);
            }
            else
            {
                _menuFrm.Show();
                _menuFrm.BringToFront();
            }

            this._mainFrameBase.TitleLabel.Text = _menuFrm.Text;
        }
Beispiel #9
0
        public TreeNodeInfo[] GetMenuTreeNodes(Sys_UserMaster_usm_Info _usmInfo)
        {
            Sys_FormMaster_fom_Info info = new Sys_FormMaster_fom_Info();

            List<TreeNodeInfo> treeNodeInfoList = new List<TreeNodeInfo>();
            TreeNodeInfo rootNodeInfo = null;
            TreeNodeInfo[] treeNodeInfos = null;

            TreeNodeInfo itemNodeInfo = null;

            info = _sysFormMasterDA.GetRecord_First();

            rootNodeInfo = new TreeNodeInfo();
            rootNodeInfo.Text = info.fom_cFormDesc;
            rootNodeInfo.Name = info.fom_cFormNumber;
            rootNodeInfo.Tag = info.fom_cExePath;
            rootNodeInfo.Index = info.fom_iIndex;

            rootNodeInfo.FileName = info.fom_iRecordID.ToString();

            TreeNodeInfo nodeInfo = null;
            info = new Sys_FormMaster_fom_Info();
            info.fom_iParentID = int.Parse(rootNodeInfo.FileName.ToString());
            //foreach (var chile in _sysFormMasterDA.SearchRecords(info))
            //{
            //    info = chile as Sys_FormMaster_fom_Info;
            //    string Name = info.fom_iRecordID.ToString();
            //    nodeInfo = null;
            //    nodeInfo = LocalGeneralMenu.Instance.InsertTreeNode(rootNodeInfo, info.fom_cFormDesc, info.fom_cExePath, info.fom_cFormNumber, info.fom_iIndex, 2);
            //    info = new Sys_FormMaster_fom_Info();
            //    info.fom_iParentID = int.Parse(Name.ToString());
            //    foreach (var q in _sysFormMasterDA.SearchRecords(info, _usmInfo))
            //    {
            //        info = q as Sys_FormMaster_fom_Info;
            //        LocalGeneralMenu.Instance.InsertTreeNode(nodeInfo, info.fom_cFormDesc, info.fom_cExePath, info.fom_cFormNumber, info.fom_iIndex, 2);
            //    }
            //}

            /**/
            foreach (var chile in _sysFormMasterDA.SearchRecords(info))
            {
                Sys_FormMaster_fom_Info fom = new Sys_FormMaster_fom_Info();
                info = chile as Sys_FormMaster_fom_Info;
                fom.fom_iParentID = info.fom_iRecordID;
                if (_sysFormMasterDA.SearchRecords(fom, _usmInfo).Count > 0)
                {
                    string Name = info.fom_iRecordID.ToString();
                    nodeInfo = null;
                    nodeInfo = LocalGeneralMenu.Instance.InsertTreeNode(rootNodeInfo, info.fom_cFormDesc, info.fom_cExePath, info.fom_cFormNumber, info.fom_iIndex, 0);//, info.fom_iImageIndex);

                    foreach (var q in _sysFormMasterDA.SearchRecords(fom, _usmInfo))
                    {
                        info = q as Sys_FormMaster_fom_Info;

                        if (info.fom_cFormNumber.ToString().ToUpper() == "DEMO")
                        {
                            itemNodeInfo = LocalGeneralMenu.Instance.InsertTreeNode(nodeInfo, info.fom_cFormDesc, info.fom_cExePath, info.fom_cFormNumber, info.fom_iIndex, 0);//, info.fom_iImageIndex);
                            itemNodeInfo.Remark = "EXE";
                            itemNodeInfo.FileName = "WPFUI\\WPFUI.exe";
                        }
                        else
                            LocalGeneralMenu.Instance.InsertTreeNode(nodeInfo, info.fom_cFormDesc, info.fom_cExePath, info.fom_cFormNumber, info.fom_iIndex, 0);//, info.fom_iImageIndex);
                    }
                }
            }

            /**/

            treeNodeInfoList.Add(rootNodeInfo);
            treeNodeInfos = treeNodeInfoList.ToArray();
            return treeNodeInfos;
        }