private void AddChildEntries(List <TreeEntry> list, TreeDirectory dir) { list.Add(dir); foreach (TreeDirectory childDir in dir.Directories) { AddChildEntries(list, childDir); } foreach (TreeFile file in dir.Files) { list.Add(file); } }
/// <summary> /// Creates a new instance of the directory item anchored at the <paramref name="rootPath"/> /// with the specified <paramref name="includeChildPredicate"/> used to test each child item for inclusion. /// </summary> /// <param name="rootPath">The root path of the directory.</param> /// <param name="includeChildPredicate">Predicate method used to test each child item for inclusion.</param> /// <returns></returns> public static TreeDirectory CreateTree(string rootPath, Func <string, bool> includeChildPredicate) { TreeDirectory objDirRoot = new TreeDirectory(rootPath, null, includeChildPredicate); return(objDirRoot); }