private void deleteButton_Click(object sender, EventArgs e) { // FullRowSelect var rows = dataGridView1.SelectedRows.OfType <DataGridViewRow>(); var selected = rows.Select(r => r.DataBoundItem as DiaryData).Single(); try { var result = MessageBox.Show("delete?", "", MessageBoxButtons.YesNo); if (result == DialogResult.Yes) { _viewModel.Delete(selected); } } catch (Exception ex) { // ログは画面では記録しない MessageBox.Show(ex.Message); } }
public void ViewModelのテスト() { var reader = new Mock <IDiaryReader>(); var writer = new Mock <IDiaryWriter>(); var list = new List <DiaryData>(); list.Add(new DiaryData { Date = DateTime.Today, Text = "test0" }); list.Add(new DiaryData { Date = DateTime.Today.AddDays(-1), Text = "test1" }); list.Add(new DiaryData { Date = DateTime.Today.AddDays(-2), Text = "test2" }); reader.Setup(x => x.ReadAllDiaryData()).Returns(list); var company = new Company { Code = "1111", Country = Country.JAPAN, Name = "hogehoge" }; var vm = new DiaryControlView(company, reader.Object, writer.Object); Assert.AreEqual("hogehoge", vm.Company.Name); Assert.AreEqual(3, vm.Diaries.Count); Assert.AreEqual("test0", vm.Diaries[0].Text); Assert.AreEqual("test1", vm.Diaries[1].Text); Assert.AreEqual("test2", vm.Diaries[2].Text); vm.Delete(list[1]); Assert.AreEqual(2, vm.Diaries.Count); Assert.AreEqual("test0", vm.Diaries[0].Text); Assert.AreEqual("test2", vm.Diaries[1].Text); }