Beispiel #1
0
        /// <summary>
        /// 转换树结构为树节点
        /// </summary>
        /// <param name="pTreeNodeSour"></param>
        /// <returns></returns>
        public static List <SomeHierarchyViewModel> CovertObjToTree(IEnumerable <TreeNode> pTreeNodeSour, ref List <SomeHierarchyViewModel> treeList)
        {
            List <SomeHierarchyViewModel> rtn = new List <SomeHierarchyViewModel>();

            foreach (var item in pTreeNodeSour)
            {
                if (item.Childs.Count > 0)
                {
                    SomeHierarchyViewModel temp = new SomeHierarchyViewModel("", new List <SomeHierarchyViewModel>(), item);
                    temp.Title = item.Name;
                    treeList.Add(temp);
                    List <SomeHierarchyViewModel> listTemp = CovertObjToTree(item.Childs, ref treeList);
                    listTemp.ForEach(n => n.Parent = temp);
                    temp.Children = listTemp;

                    rtn.Add(temp);
                }
                else
                {
                    SomeHierarchyViewModel temp = new SomeHierarchyViewModel("", new List <SomeHierarchyViewModel>(), item);
                    temp.Title    = item.Name;
                    temp.obj      = item;
                    temp.Children = null;
                    rtn.Add(temp);
                    treeList.Add(temp);
                }
            }
            return(rtn);
        }
Beispiel #2
0
        public SomeHierarchyViewModel(string title, List <SomeHierarchyViewModel> children, Object obj, SomeHierarchyViewModel parent = null)
        {
            this.Title    = title;
            this.Parent   = parent;
            this.Children = children;
            this.obj      = obj;

            if (this.Children != null)
            {
                this.Children.ForEach(ch => ch.Parent = this);
            }
        }