Example #1
0
        /// <summary>
        /// 得到这个节点,不会创建
        /// </summary>
        /// <returns></returns>
        public HierarchyTreeNode GetNode(string[] hierarchyPath)
        {
            if (hierarchyPath == null || hierarchyPath.Length == 0)
            {
                throw new ArgumentException();
            }

            //根节点的第一层里先搜索
            HierarchyTreeNode curNode = root;

            //开始从第一个Node出发开始搜索
            for (int i = 0; i < hierarchyPath.Length; i++)
            {
                if (!string.IsNullOrEmpty(hierarchyPath[i]))
                {
                    string nodeName = hierarchyPath[i];

                    curNode = curNode.FindChild(nodeName);
                    if (curNode == null)
                    {
                        return(null);//无法找到只能中断
                    }
                }
            }
            return(curNode);
        }