private void DatosMetroGrid_CellContentClick(object sender, DataGridViewCellEventArgs e) { if (e.ColumnIndex == 1) { DataGridViewRow r = DatosMetroGrid.SelectedRows[0]; Tipo tipo = (Tipo)r.Tag; DialogResult dr = Helper .MostrarMensaje(this, $"¿Desea dar de baja el tipo {tipo.Descripcion}?"); if (dr == DialogResult.Yes) { try { servicio.Borrar(tipo.TipoId); DatosMetroGrid.Rows.Remove(r); Helper.MostrarMensaje(this, "Registro Borrado", TipoDeCuadro.Success); } catch (Exception exception) { Helper.MostrarMensaje(this, exception.Message, TipoDeCuadro.Error); } } } else if (e.ColumnIndex == 2) { DataGridViewRow r = DatosMetroGrid.SelectedRows[0]; Tipo tipo = (Tipo)r.Tag; Tipo tipoAux = (Tipo)tipo.Clone(); TiposAEForm frm = new TiposAEForm(); frm.Text = "Editar Tipo"; frm.SetTipo(tipo); DialogResult dr = frm.ShowDialog(this); if (dr == DialogResult.OK) { try { tipo = frm.GetTipo(); if (!servicio.Existe(tipo)) { servicio.Editar(tipo); SetearFila(r, tipo); Helper.MostrarMensaje(this, "Registro Editado", TipoDeCuadro.Success); } else { SetearFila(r, tipoAux); Helper.MostrarMensaje(this, "Registro repetido", TipoDeCuadro.Error); } } catch (Exception exception) { SetearFila(r, tipoAux); Helper.MostrarMensaje(this, exception.Message, TipoDeCuadro.Error); } } } }