private void mgDatos_CellContentClick(object sender, DataGridViewCellEventArgs e) { DataGridViewRow r = mgDatos.SelectedRows[0]; ProfesorListDto profesorListDto = (ProfesorListDto)r.Tag; if (e.ColumnIndex == 1) { DialogResult dr = MetroMessageBox.Show(this, $"¿Desea dar de baja al profesor {profesorListDto.NombreCompleto}?", "Confirmar Baja", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2); if (dr == DialogResult.Yes) { try { if (!servicio.EstaRelacionado(profesorListDto)) { servicio.Borrar(profesorListDto.ProfesorId); mgDatos.Rows.Remove(r); MetroMessageBox.Show(this, "Registro borrado", "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Information); } } catch (Exception exception) { MetroMessageBox.Show(this, exception.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } else if (e.ColumnIndex == 2) { ProfesorEditDto profesorEditDto = servicio.GetProfesorPorId(profesorListDto.ProfesorId); FrmProfesorAE frm = new FrmProfesorAE(); frm.Text = "Editar Profesor"; frm.SetProfesor(profesorEditDto); DialogResult dr = frm.ShowDialog(this); if (dr == DialogResult.OK) { try { profesorEditDto = frm.GetProfesor(); servicio.Guardar(profesorEditDto); profesorListDto = Mapeador.CrearMapper().Map <ProfesorListDto>(profesorEditDto); SetearFila(r, profesorListDto); MetroMessageBox.Show(this, "Registro Editado", "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Information); } catch (Exception exception) { MetroMessageBox.Show(this, exception.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } }