/// <summary> /// Конструктор по умолчанию. /// </summary> public AudiosViewModel(string uniqueKey, long ownerID) : base(uniqueKey) { _audios = new AudiosCollection(ownerID); _recommendations = new RecommendedAudiosCollection((ulong)ownerID); _popular = new PopularAudiosCollection(); _albums = new AudioAlbumsCollection(ownerID); Refresh = new RelayCommand(() => Audios.Refresh()); RefreshAlbums = new RelayCommand(() => Albums.Refresh()); RefreshPopular = new RelayCommand(() => Popular.Refresh()); RefreshRecommended = new RelayCommand(() => Recommendations.Refresh()); DeleteCommand = new RelayCommand <VKAudio>(async audio => { var request = new Request.DeleteAudioRequest(audio.ID, audio.OwnerID); var response = await request.ExecuteAsync(); if (response.Error.ErrorType == VKErrors.None) { Audios.Remove(audio); } else { await ServiceHelper.DialogService.ShowMessageBox("Произошла ошибка: " + response.Error.ErrorType.ToString(), "Не удалось удалить аудиозапись."); } }); DownloadAudio = new RelayCommand <VKAudio>(async audio => { var command = new VKSaverDownloadCommand(); command.Downloads.Add(CoreHelper.GetDownload(audio)); await command.TryExecute(); }); #if DEBUG if (ViewModelBase.IsInDesignModeStatic) { for (int i = 0; i < 71; i++) { Audios.Add(DesignDataHelper.GetAudio()); Recommendations.Add(DesignDataHelper.GetAudio()); Popular.Add(DesignDataHelper.GetAudio()); } } #endif }
public void RefreshFiltering() { Items.Refresh(); Popular.Refresh(); Recent.Refresh(); }