private async Task RefreshBackupList() { // Získání souborů List <OneDriveFileInfo> files = new List <OneDriveFileInfo>(); if (IsLoggedIn) { // Získání složky string folderId = await LiveConnectHelper.SearchFolderIdAsync(BackupFolderName); // Získání seznamu souborů se zálohami if (folderId != null) { files = await LiveConnectHelper.GetFilesInfoAsync(folderId, BackupFileExtension); } } // Vytvoření seznamu List <RestoreListPickerItem> list = new List <RestoreListPickerItem>(); foreach (OneDriveFileInfo fileInfo in files) { string fileName = fileInfo.Name.Replace(BackupFileExtension, ""); try { DateTime createdDate = DateTimeExtensions.FromFileName(fileName); list.Add(new RestoreListPickerItem(createdDate.ToString(), fileInfo, createdDate)); } catch (FormatException) { // Při parsování datumu, takže } } // Seřazení podle vytvoření list.Sort((f1, f2) => { return(f2.Value2.CompareTo(f1.Value2)); }); if (list.Count > _maxBackupsInList) { list.RemoveRange(_maxBackupsInList, list.Count - _maxBackupsInList); } // Naplnění pickeru if (list.Count > 0) { list[0].Label += string.Format(" ({0})", AppResources.BackupLatest); BackupList = new ObservableCollection <RestoreListPickerItem>(list); } else { BackupList.Clear(); BackupList.Add(new RestoreListPickerItem(AppResources.NoBackups, null, DateTime.MinValue)); } }