예제 #1
0
        private void BuildProjectTree(ProjectItem parent, string[] parts, int index)
        {
            var item = parent.Items.Where(i => i.Name == parts[index]).FirstOrDefault();

            if (item == null)
            {
                if (index < parts.Length - 1)
                {
                    var dir = new DirectoryItem(Path.Combine(parent.FolderPath, parts[index]));
                    parent.AddChild(dir);
                    BuildProjectTree(dir, parts, index + 1);
                }
                else
                {
                    var file = new FileItem(Path.Combine(parent.FolderPath, parts[index]));
                    parent.AddChild(file);
                }
            }
            else
            {
                BuildProjectTree(item, parts, index + 1);
            }
        }
예제 #2
0
        //========================================================================================
        // Methods
        //========================================================================================

        public int AddChild(ProjectItem item)
        {
            return(root.AddChild(item));
        }