예제 #1
0
        /// <summary>
        /// 加载导航
        /// </summary>
        private void LoadMenu()
        {
            myTree.Nodes.Clear();
            protocolModels.Clear();
            myTree.Refresh();

            //获取所有分类
            var classList = ProtocolDB.GetAllClassification();

            //首级菜单
            var fList = classList.Where(c => c.ParentID == "").ToList();

            if (fList != null && fList.Count > 0)
            {
                for (int i = 0; i < fList.Count; i++)
                {
                    TreeNode node = new TreeNode();
                    node.Text = $"[模块]{fList[i].PCName}";
                    node.Tag  = new NodeSelectTag()
                    {
                        Model   = fList[i],
                        TagType = NodeSelectTag.TAGTYPE.Classisication,
                        Target  = node
                    };
                    GetChildNodes(fList[i], node);
                    myTree.Nodes.Add(node);
                }
            }
            myTree.Refresh();
        }
예제 #2
0
        /// <summary>
        /// 递归获取nodes
        /// </summary>
        /// <param name="_classModel"></param>
        /// <param name="_parentNode"></param>
        private void GetChildNodes(ProtocolClassificationModel _classModel, TreeNode _parentNode)
        {
            //获取所有分类
            var classList = ProtocolDB.GetAllClassification();

            //查找当前分类下的所有子类
            var childList = classList.Where(c => c.ParentID == _classModel.PCID).ToList();

            if (childList != null && childList.Count > 0)
            {
                for (int i = 0; i < childList.Count; i++)
                {
                    TreeNode node = new TreeNode();
                    node.Text = $"[模块]{childList[i].PCName}";
                    node.Tag  = new NodeSelectTag()
                    {
                        Model   = childList[i],
                        TagType = NodeSelectTag.TAGTYPE.Classisication,
                        Target  = node
                    };
                    GetChildNodes(childList[i], node);
                    _parentNode.Nodes.Add(node);
                }
            }

            //查找当前分类下的所有协议
            var proList = ProtocolDB.GetProtocol(_classModel.PCID);

            if (proList != null && proList.Count > 0)
            {
                for (int i = 0; i < proList.Count; i++)
                {
                    TreeNode node = new TreeNode();
                    node.Text = $"[协议]{ proList[i].Code}-{proList[i].CName}";
                    node.Tag  = new NodeSelectTag()
                    {
                        Model   = proList[i],
                        TagType = NodeSelectTag.TAGTYPE.Protocol,
                        Target  = node
                    };
                    _parentNode.Nodes.Add(node);
                    //添加到所有协议中
                    protocolModels.Add(proList[i]);
                }
            }
        }