Exemplo n.º 1
0
        private void AddItem(ProjectModel model, string path, string projectDir)
        {
            string[] parts = path.Split(Path.DirectorySeparatorChar, Path.AltDirectorySeparatorChar);

            var fileModel = new CodeFileModel
            {
                AbsolutePath = Path.GetFullPath(Path.Combine(projectDir, path)),
                RelativePath = path,
            };

            if (parts.Length > 1)
            {
                FolderModel folder = GetOrAdd(model.Folders, parts[0]);

                for (int i = 1; i < parts.Length - 1; i++)
                {
                    folder = GetOrAdd(folder.SubDirectories, parts[i]);
                }

                folder.Files.Add(fileModel);
            }
            else
            {
                model.CodeFiles.Add(fileModel);
            }
        }
 public SolutionExplorerItemNode(CodeFileModel model)
     : base(LookupImage(ItemTypeIcons, model.Type), model.FileName)
 {
     DataContext = model;
 }
 private TreeViewItem GetTreeItem(CodeFileModel model)
 {
     return(new SolutionExplorerItemNode(model));
 }