private void button1_Click(object sender, EventArgs e) { DataLoader loader; DataSource source; GroupSource group_source; try { loader = new NetworkDownloader(textBox1.Text); loader.Load(); source = new CSVSource(loader.GetData()); source.Load(); group_source = new GroupSource(textBox2.Text); group_source.Load(); }catch (Exception ex) { MessageBox.Show("Unable to download data: " + ex.Message); return; } listView1.Items.Clear(); this.Groups = group_source.Groups; CovidDataRow total = new CovidDataRow("Total"); foreach (var group in group_source.Groups) { var last_date = dateTimePicker1.Value; var data = group.GetDataForDate(last_date); this.DisplayData(group.Name, data); total += data; } this.DisplayData("Total:", total); }