Esempio n. 1
0
        private static async Task <ListedItem> AddFolderAsync(BaseStorageFolder folder, StorageFolderWithPath currentStorageFolder, string dateReturnFormat, CancellationToken cancellationToken)
        {
            var basicProperties = await folder.GetBasicPropertiesAsync();

            if (!cancellationToken.IsCancellationRequested)
            {
                return(new ListedItem(folder.FolderRelativeId, dateReturnFormat)
                {
                    PrimaryItemAttribute = StorageItemTypes.Folder,
                    ItemName = folder.DisplayName,
                    ItemDateModifiedReal = basicProperties.DateModified,
                    ItemDateCreatedReal = folder.DateCreated,
                    ItemType = folder.DisplayType,
                    IsHiddenItem = false,
                    Opacity = 1,
                    LoadFolderGlyph = true,
                    FileImage = null,
                    LoadFileIcon = false,
                    ItemPath = string.IsNullOrEmpty(folder.Path) ? PathNormalization.Combine(currentStorageFolder.Path, folder.Name) : folder.Path,
                    LoadUnknownTypeGlyph = false,
                    FileSize = null,
                    FileSizeBytes = 0
                });
            }
            return(null);
        }
        public static async Task <ListedItem> AddFolderAsync(BaseStorageFolder folder, StorageFolderWithPath currentStorageFolder, CancellationToken cancellationToken)
        {
            var basicProperties = await folder.GetBasicPropertiesAsync();

            if (!cancellationToken.IsCancellationRequested)
            {
                if (folder is ShortcutStorageFolder linkFolder)
                {
                    return(new ShortcutItem(folder.FolderRelativeId)
                    {
                        PrimaryItemAttribute = StorageItemTypes.Folder,
                        IsHiddenItem = false,
                        Opacity = 1,
                        FileImage = null,
                        LoadFileIcon = false,
                        ItemNameRaw = folder.DisplayName,
                        ItemDateModifiedReal = basicProperties.DateModified,
                        ItemDateCreatedReal = folder.DateCreated,
                        ItemType = folder.DisplayType,
                        ItemPath = folder.Path,
                        FileSize = null,
                        FileSizeBytes = 0,
                        TargetPath = linkFolder.TargetPath,
                        Arguments = linkFolder.Arguments,
                        WorkingDirectory = linkFolder.WorkingDirectory,
                        RunAsAdmin = linkFolder.RunAsAdmin
                    });
                }
                else if (folder is BinStorageFolder binFolder)
                {
                    return(new RecycleBinItem(folder.FolderRelativeId)
                    {
                        PrimaryItemAttribute = StorageItemTypes.Folder,
                        ItemNameRaw = folder.DisplayName,
                        ItemDateModifiedReal = basicProperties.DateModified,
                        ItemDateCreatedReal = folder.DateCreated,
                        ItemType = folder.DisplayType,
                        IsHiddenItem = false,
                        Opacity = 1,
                        FileImage = null,
                        LoadFileIcon = false,
                        ItemPath = string.IsNullOrEmpty(folder.Path) ? PathNormalization.Combine(currentStorageFolder.Path, folder.Name) : folder.Path,
                        FileSize = null,
                        FileSizeBytes = 0,
                        ItemDateDeletedReal = binFolder.DateDeleted,
                        ItemOriginalPath = binFolder.OriginalPath,
                    });
                }
                else
                {
                    return(new ListedItem(folder.FolderRelativeId)
                    {
                        PrimaryItemAttribute = StorageItemTypes.Folder,
                        ItemNameRaw = folder.DisplayName,
                        ItemDateModifiedReal = basicProperties.DateModified,
                        ItemDateCreatedReal = folder.DateCreated,
                        ItemType = folder.DisplayType,
                        IsHiddenItem = false,
                        Opacity = 1,
                        FileImage = null,
                        LoadFileIcon = false,
                        ItemPath = string.IsNullOrEmpty(folder.Path) ? PathNormalization.Combine(currentStorageFolder.Path, folder.Name) : folder.Path,
                        FileSize = null,
                        FileSizeBytes = 0
                    });
                }
            }
            return(null);
        }