private async void Initialize() { // show progress IsEnabled = false; panelProgress.Visibility = Visibility.Visible; buttonRefresh.Visibility = Visibility.Hidden; var app = (App)Application.Current; PlexPlaylist[] playlists = null; try { playlists = await app.plexClient.GetPlaylists(); } catch { MessageBox.Show("Failed to fetch data from remote server.", "PlexFlux", MessageBoxButton.OK, MessageBoxImage.Error); Close(); return; } Playlists.FromArray(playlists); // hide progress IsEnabled = true; buttonRefresh.Visibility = Visibility.Visible; panelProgress.Visibility = Visibility.Hidden; }