private void CrunchNumbers() { if (AllRecords.Count <= 0) { return; } CrunchedNumbers.Clear(); StatsList.Clear(); foreach (List <RecordLite> recordSet in AllRecords) { if (recordSet.Count <= 0) { continue; } int teamNum = recordSet.First().TeamID; TeamStatsLite stats = TeamStatsLite.MakeStats(recordSet); StatsList.Add(stats); CrunchedNumbers.Add(teamNum, stats.GetMeanRatings()); } InfoTeamsList.Items.Clear(); foreach (TeamStatsLite stat in StatsList) { InfoTeamsList.Items.Add(stat); } if (InfoTeamsList.Items.Count > 0) { InfoTeamsList.SelectedIndex = 0; } hasCrunched = true; SortDataGrid.ItemsSource = DataGridSummaries; }