/// <summary>Refreshes a filtered list based on selectedIndex.</summary> /// <param name="filterText">The filter text.</param> /// <param name="selectedIndex">Index of the selected.</param> internal void RefreshList(string filterText, int selectedIndex) { if (filterText == null) { filterText = ""; } switch (selectedIndex) { case 0: FilteredAudience.Clear(); foreach (var filtered in AudienceChallenges) { if (filtered.Game != null && filtered.Game.Name.ToLower().StartsWith(filterText)) { FilteredAudience.Add(filtered); } else if (filterText.Equals("")) { FilteredAudience.Add(filtered); } } break; case 1: FilteredCrew.Clear(); foreach (var filtered in CrewChallenges) { if (filtered.Game != null && filtered.Game.Name.ToLower().StartsWith(filterText)) { FilteredCrew.Add(filtered); } else if (filterText.Equals("")) { FilteredCrew.Add(filtered); } } break; case 2: FilteredMulti.Clear(); foreach (var filtered in MultipleChoiceChallenges.Where(x => x.ChallengeTask.ToLower().StartsWith(filterText))) { FilteredMulti.Add(filtered); } break; case 3: FilteredMusic.Clear(); foreach (var filtered in MusicChallenges) { if (filtered.Song != null && filtered.Song.Name.ToLower().StartsWith(filterText)) { FilteredMusic.Add(filtered); } else if (filterText.Equals("")) { FilteredMusic.Add(filtered); } } break; case 4: FilteredQuiz.Clear(); foreach (var filtered in QuizChallenges.Where(x => x.ChallengeTask.ToLower().StartsWith(filterText))) { FilteredQuiz.Add(filtered); } break; case 5: FilteredScreen.Clear(); foreach (var filtered in ScreenshotChallenges) { if (filtered.Image != null && filtered.Image.Name.ToLower().StartsWith(filterText)) { FilteredScreen.Add(filtered); } else if (filterText.Equals("")) { FilteredScreen.Add(filtered); } } break; case 6: FilteredSilhu.Clear(); foreach (var filtered in SilhouetteChallenges) { if (filtered.Image != null && filtered.Image.Name.ToLower().StartsWith(filterText)) { FilteredSilhu.Add(filtered); } else if (filterText.Equals("")) { FilteredSilhu.Add(filtered); } } break; case 7: FilteredSolo.Clear(); foreach (var filtered in SologameChallenges) { if (filtered.Game != null && filtered.Game.Name.ToLower().StartsWith(filterText)) { FilteredSolo.Add(filtered); } else if (filterText.Equals("")) { FilteredSolo.Add(filtered); } } break; } }