VLC_WINRT.ViewModels.MainPage.VideoLibraryViewModel.GetMedia C# (CSharp) Method

GetMedia() public method

public GetMedia ( ) : System.Threading.Tasks.Task
return System.Threading.Tasks.Task
        public async Task GetMedia()
        {
            try
            {
                IReadOnlyList<StorageFile> files =
                    await GetMediaFromFolder(_location, CommonFileQuery.OrderByName);

                if (files.Count > 0)
                {
                    await DispatchHelper.InvokeAsync(() => HasNoMedia = false);
                }
                else
                {
                    await DispatchHelper.InvokeAsync(() => HasNoMedia = true);
                }

                int j = 0;
                foreach (StorageFile storageFile in files)
                {
                    var mediaVM = new MediaViewModel(storageFile);
                    await mediaVM.Initialize();
                    // Get back to UI thread
                    await DispatchHelper.InvokeAsync(() =>
                    {
                        Media.Add(mediaVM);
                        int i = new Random().Next(0, files.Count - 1);
                        if (j < 5 && i <= (files.Count - 1) / 2)
                        {
                            MediaRandom.Add(mediaVM);
                            j++;
                        }
                        MediaGroupedByAlphabet = Media.OrderBy(x => x.AlphaKey).GroupBy(x => x.AlphaKey);
                        ExecuteSemanticZoom();
                    });
                }
            }
            catch
            {
               
            }
        }

Usage Example

Esempio n. 1
0
        public override async Task OnNavigatedTo(NavigationEventArgs e)
        {
            // Make sure we're only initializing once.
            if (e.NavigationMode == NavigationMode.New)
            {
                await InitVideoVM();

                await _lastViewedVM.Initialize();

                var dlnaFolder = await KnownVLCLocation.MediaServers.GetFoldersAsync();

                var tasks = new List <Task>();
                DLNAVMs.Clear();
                foreach (StorageFolder storageFolder in dlnaFolder)
                {
                    StorageFolder newFolder = storageFolder;
                    var           videoLib  = new VideoLibraryViewModel(newFolder);
                    tasks.Add(videoLib.GetMedia());
                    DLNAVMs.Add(videoLib);
                }
                await Task.WhenAll(tasks);
            }
        }
All Usage Examples Of VLC_WINRT.ViewModels.MainPage.VideoLibraryViewModel::GetMedia