示例#1
0
        public static void AddCollectionToCollection(string parentCollectionName, string collectionName)
        {
            CollectionNode parentNode = null;

            if (collectionNodes.ContainsKey(parentCollectionName))
            {
                parentNode = collectionNodes[parentCollectionName];
            }

            if (!collectionNodes.ContainsKey(collectionName))
            {
                CreateCollectionNode(parentNode, collectionName);
            }
            else
            {
                CollectionNode collectionNode = collectionNodes[collectionName];
                if (null != collectionNode.parent)
                {
                    collectionNode.parent.RemoveChild(collectionNode);
                }

                if (null != parentNode)
                {
                    parentNode.AddChild(collectionNode);
                }
            }
        }
示例#2
0
        public static CollectionNode CreateCollectionNode(CollectionNode parent, string name)
        {
            if (name == "__Trash__")
            {
                return(null);
            }

            CollectionNode newNode = new CollectionNode(name);

            collectionNodes.Add(name, newNode);
            if (parent != null)
            {
                parent.AddChild(newNode);
            }
            return(newNode);
        }