private void btnNew_Click(object sender, EventArgs e) { var frm = new EditUpdate(_updateSeries); frm.ShowDialog(); grdUpdates.DataSource = new BindingSource { DataSource = _updateService.GetUpdatesBySeriesId(_updateSeries.Id).Select(x => new UpdateUiModel { Id = x.Id, Name = x.Name, Type = x.UpdateType, DateCreated = x.DateCreated }) }; }
private void EditUpdateSeries_Load(object sender, EventArgs e) { grdUpdates.DataSourceChanged += grdUpdates_DataSourceChanged; grdUpdates.CellContentClick += grdUpdates_CellContentClick; grdUpdates.Width = grdUpdates.Parent.Width; if (_updateSeries.Id.Equals(Guid.Empty)) { btnNew.Enabled = false; lblDateCreatedValue.Text = DateTime.Now.ToShortDateString(); lblDateModifiedValue.Text = DateTime.Now.ToShortDateString(); return; } lstVersions.DataSource = _updateService.GetAllVersionsForUpdateSeries(_updateSeries.Id); lstVersions.DisplayMember = "VersionName"; lstVersions.ValueMember = "Id"; txtName.Text = _updateSeries.Name; txtDescription.Text = _updateSeries.Description; lblDateCreatedValue.Text = _updateSeries.DateCreated.ToShortDateString(); lblDateModifiedValue.Text = _updateSeries.DateModified.ToShortDateString(); var allUpdates = _updateService.GetUpdatesBySeriesId(_updateSeries.Id).Select(x => new UpdateUiModel { Id = x.Id, Name = x.Name, Type = x.UpdateType, DateCreated = x.DateCreated }); if (allUpdates.Count() > 0) { grdUpdates.DataSource = new BindingSource { DataSource = allUpdates } } ; } void grdUpdates_CellContentClick(object sender, DataGridViewCellEventArgs e) { if (e.ColumnIndex.Equals(14)) { //edit var frm = new EditUpdate(_updateService.GetUpdateById(Guid.Parse(grdUpdates.Rows[e.RowIndex].Cells[0].Value.ToString())), _updateSeries); frm.ShowDialog(); grdUpdates.Columns.Clear(); grdUpdates.DataSource = new BindingSource { DataSource = _updateService.GetUpdatesBySeriesId(_updateSeries.Id).Select(x => new UpdateUiModel { Id = x.Id, Name = x.Name, Type = x.UpdateType, DateCreated = x.DateCreated }) }; } else if (e.ColumnIndex.Equals(4)) { //delete if (MessageBox.Show("Are you sure you want to delete this update", "Delete update", MessageBoxButtons.OKCancel).Equals(DialogResult.OK)) { _updateService.DeleteUpdateById(Guid.Parse(grdUpdates.Rows[e.RowIndex].Cells[0].Value.ToString())); grdUpdates.Rows.RemoveAt(e.RowIndex); } } } void grdUpdates_DataSourceChanged(object sender, EventArgs e) { try { //grdUpdates.Columns.Add(new DataGridViewButtonColumn //{ // HeaderText = "", // Text = "Edit", // Name = "btnEdit", // UseColumnTextForButtonValue = true, //}); grdUpdates.Columns.Add(new DataGridViewButtonColumn { HeaderText = "", Text = "Delete", Name = "btnDelete", UseColumnTextForButtonValue = true }); grdUpdates.Columns[0].Visible = false; grdUpdates.Columns[1].Width = 262; grdUpdates.Columns[2].Width = 200; grdUpdates.Columns[3].Width = 150; grdUpdates.Columns[4].Width = 150; //grdUpdates.Columns[5].Width = 150; } catch (Exception) { } }