Exemple #1
0
        public async Task <ICollection <StorageFolderWrapper> > GetChildFolders(StorageFolderWrapper wrapper)
        {
            var subDirs = (await wrapper.GetFoldersAsync()).Select(StorageFolderWrapper.FromFoder).ToList();

            if (wrapper.IsLibrary)
            {
                subDirs
                .GroupBy(s => s.Name)
                .Where(g => g.Count() > 1)
                .SelectMany(g => g).ToList()
                .ForEach(d => d.ParentIsLibraryAndHasSameNameSibling = true);
            }
            subDirs.ForEach(wrapper.SubFolders.Add);
            return(subDirs);
        }
Exemple #2
0
        public async Task <StorageFolderWrapper> OpenDirectory(IStorageFolder folder)
        {
            if (folder == null)
            {
                throw new NullReferenceException("Folder cannot be absent");
            }
            StorageApplicationPermissions.MostRecentlyUsedList.Add(folder);
            var wrapper = new StorageFolderWrapper(folder, isRoot: true);

            Directories.Add(wrapper);
            await GetChildFolders(wrapper);

            wrapper.HasUnrealizedChildren = false;
            return(wrapper);
        }