public async Task RefrechCacheState() { // キャッシュの状態を更新 ClearCacheQuality(); var cacheManager = App.Current.Container.Resolve <VideoCacheManager>(); var cacheRequests = await cacheManager.GetCacheRequest(RawVideoId); IsCacheRequested.Value = cacheRequests.Any(); if (IsCacheRequested.Value) { ThemeColor = Windows.UI.Colors.Green; } else { if (Database.VideoPlayedHistoryDb.IsVideoPlayed(RawVideoId)) { // 視聴済み ThemeColor = Windows.UI.Colors.Transparent; } else { // 未視聴 ThemeColor = Windows.UI.Colors.Gray; } } foreach (var req in cacheRequests) { var vm = new CachedQualityNicoVideoListItemViewModel(req, cacheManager); CachedQualityVideos.Add(vm); } }
private void ClearCacheQuality() { foreach (var cached in CachedQualityVideos) { cached.Dispose(); } CachedQualityVideos.Clear(); }