コード例 #1
0
ファイル: EditUpdateSeries.cs プロジェクト: klimkina/CSharp
        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
                })
            };
        }
コード例 #2
0
ファイル: EditUpdateSeries.cs プロジェクト: klimkina/CSharp
        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) { }
        }