private async void objShows_SelectedIndexChanged(object sender, EventArgs e)
{
if ((objShows.SelectedIndex != -1) && (_lastshowindex != objShows.SelectedIndex))
{
SetBusy(objEpisode, true);
Show s = (Show)objShows.SelectedObject;
labShowDescription.Text = s.Description;
_selected_episodes = await DownloadPluginHandler.Instance.Episodes(s.PluginName, s);
if (_selected_episodes.Status == ResponseStatus.Ok)
{
objEpisode.Items.Clear();
_lastepisodeindex = -1;
labEpisodeDescription.Text = string.Empty;
pictEpisode.Image = null;
if ((_selected_episodes.Items.Any(a => a.SeasonAlpha != string.Empty)))
{
objEpisode.ShowGroups = true;
colEpisodeSeason.IsVisible = true;
objEpisode.RebuildColumns();
objEpisode.SetObjects(_selected_episodes.Items);
objEpisode.BuildGroups(colEpisodeSeason, SortOrder.Ascending);
objEpisode.BuildList(true);
}
else
{
colEpisodeSeason.IsVisible = false;
objEpisode.Groups.Clear();
objEpisode.ShowGroups = false;
objEpisode.RebuildColumns();
objEpisode.SetObjects(_selected_episodes.Items);
objEpisode.BuildList(true);
}
if (_selected_episodes.ImageUri != null)
picShow.LoadAsync(_selected_episodes.ImageUri.ToString());
if (_selected_episodes.Items.Count > 0)
objEpisode.SelectedIndex = 0;
}
SetBusy(objEpisode, false);
}
}