public override void Delete() { if (this.CurrentId != 0) { if (MessageBox.Show("Вы действительно хотите удалить запись?", "Удаление записи", MessageBoxButtons.OKCancel).Equals(DialogResult.OK)) { BrigadePerson brigadePerson = Databases.Tables.BrigadePersons[this.CurrentId]; brigadePerson.Delete(); Init(); } } }
public override void New() { if (this.BrigadeId != 0) { Brigade brigade = Databases.Tables.Brigades[BrigadeId]; frmPersons form = new frmPersons(); form.ctrlPersons.Deletions = (from person in Databases.Tables.Persons.Active from brigadePerson in Databases.Tables.BrigadePersons.Active where person.Equals(brigadePerson.Person) select person).ToList(); form.CatalogMode = CatalogMode.Select; form.ShowDialog(); if (form.SelectedPersonId != 0) { BrigadePerson brigadePerson = new BrigadePerson(this.BrigadeId, form.SelectedPersonId); Databases.Tables.BrigadePersons.Insert(brigadePerson); } Init(); } }
private void dgvExecutors_CellContentClick(object sender, DataGridViewCellEventArgs e) { if (e.ColumnIndex >= 0 && e.RowIndex >= 0) { DataGridView grid = (DataGridView)sender; DataGridViewColumn column = grid.Columns[e.ColumnIndex]; DataGridViewRow row = grid.Rows[e.RowIndex]; DataGridViewCell cell = grid[e.ColumnIndex, e.RowIndex]; switch (column.Name) { case "PersonCode": frmBrigadePersons fbp = new frmBrigadePersons(); fbp.CatalogMode = CatalogMode.Select; fbp.ctrlBrigadePersons.BrigadeId = this.BrigadeId; List <BrigadePerson> deletions = new List <BrigadePerson>(); List <short> deletionsCodes = new List <short>(); foreach (DataGridViewRow r in this.dgvItems.Rows) { deletionsCodes.Add(Convert.ToInt16(r.Cells["PersonCode"].Value)); } foreach (short deletionCode in deletionsCodes) { deletions.AddRange(Databases.Tables.BrigadePersons.Active.Where(r => r.Person.Code == deletionCode).AsEnumerable()); } fbp.ctrlBrigadePersons.Deletions = deletions; fbp.ShowDialog(); if (fbp.ctrlBrigadePersons.SelectedId != 0) { BrigadePerson brigadePerson = Databases.Tables.BrigadePersons[fbp.ctrlBrigadePersons.SelectedId]; DataGridViewButtonCell button = (DataGridViewButtonCell)cell; button.Value = brigadePerson.Person.Code.ToString(); button.Tag = brigadePerson.Person; row.Cells["PersonLastName"].Value = brigadePerson.Person.LastName; row.Cells["PersonFirstName"].Value = brigadePerson.Person.FirstName; row.Cells["PersonMiddleName"].Value = brigadePerson.Person.MiddleName; } break; case "ProfessionCode": if (row.Cells["PersonCode"].Value != null) { frmPersonProfessions ppf = new frmPersonProfessions(); Person p = ((DataGridViewButtonCell)row.Cells["PersonCode"]).Tag as Person; ppf.ctrlPersonProfessions.PersonId = p.Id; ppf.ShowDialog(); if (ppf.SelectedId != 0) { PersonProfession pp = Databases.Tables.PersonProfessions[ppf.SelectedId]; DataGridViewButtonCell b = (DataGridViewButtonCell)cell; b.Tag = pp; b.Value = pp.Profession.Code.ToString(); grid.CurrentCell = row.Cells["Rank"]; grid.BeginEdit(true); DataGridViewTextBoxEditingControl rankControl = (DataGridViewTextBoxEditingControl)grid.EditingControl; rankControl.Text = pp.Rank.ToString(); grid.EndEdit(); } } break; default: break; } } }