//Operaciones sobre BOTONES en la tabla private void TablaDatos_CellContentClick(object sender, DataGridViewCellEventArgs e) { //borrado según índice por medio de botón string nombrearticulo = ""; if (e.ColumnIndex == TablaDatos.Columns["ColumnBorrar"].Index) { nombrearticulo = TablaDatos.Rows[e.RowIndex].Cells[0].Value.ToString(); DialogResult dialogResult = MessageBox.Show("¿Quieres borrar " + nombrearticulo + " ?", "Aviso", MessageBoxButtons.YesNo); if (dialogResult == DialogResult.Yes) { TablaDatos.Rows.RemoveAt(e.RowIndex); } } comprobacion(); //Edición según ínidice por medio de un formulario adaptado a la modificación por medio de botón if (e.ColumnIndex == TablaDatos.Columns["ColumnModificar"].Index) { Image imagen = null; nombrearticulo = TablaDatos.Rows[e.RowIndex].Cells[0].Value.ToString(); Modificacion a = new Modificacion(); a.Text = "Modificando " + nombrearticulo; DialogResult ventana = new DialogResult(); ventana = a.ShowDialog(); if (a.DialogResult == DialogResult.OK) { if (a.nombre != "") { nombreValor = a.nombre; cantidadValor = a.cantidad; precioValor = a.precio; descripcionValor = a.descripcion; tipoValor = a.tipo; rutaimagen = a.ruta; try { imagen = Image.FromFile(rutaimagen); MessageBox.Show(rutaimagen); } catch (Exception) { MessageBox.Show("Explota la imagen"); imagen = null; } TablaDatos.Rows[e.RowIndex].Cells[0].Value = nombreValor; TablaDatos.Rows[e.RowIndex].Cells[2].Value = cantidadValor; TablaDatos.Rows[e.RowIndex].Cells[3].Value = precioValor; TablaDatos.Rows[e.RowIndex].Cells[4].Value = descripcionValor; TablaDatos.Rows[e.RowIndex].Cells[5].Value = tipoValor; TablaDatos.Rows[e.RowIndex].Cells[6].Value = imagen; TablaDatos.Rows[e.RowIndex].Cells[7].Value = mod; TablaDatos.Rows[e.RowIndex].Cells[8].Value = del; MessageBox.Show("Modificado"); } } } }
//funcion de modificación a partir de selección private void modificacion() { try { Image imagen = null; string nombrearticulo = TablaDatos.SelectedRows[0].Cells[1].Value.ToString(); int index = TablaDatos.SelectedRows[0].Index; Modificacion a = new Modificacion(); a.Text = "Modificando " + nombrearticulo; DialogResult ventana = new DialogResult(); ventana = a.ShowDialog(); if (a.DialogResult == DialogResult.OK) { nombreValor = a.nombre; cantidadValor = a.cantidad; precioValor = a.precio; descripcionValor = a.descripcion; tipoValor = a.tipo; rutaimagen = a.ruta; try { imagen = Image.FromFile(rutaimagen); MessageBox.Show(rutaimagen); } catch (Exception) { MessageBox.Show("Explota la imagen"); imagen = null; } TablaDatos.Rows[index].Cells[0].Value = nombreValor; TablaDatos.Rows[index].Cells[2].Value = cantidadValor; TablaDatos.Rows[index].Cells[3].Value = precioValor; TablaDatos.Rows[index].Cells[4].Value = descripcionValor; TablaDatos.Rows[index].Cells[5].Value = tipoValor; TablaDatos.Rows[index].Cells[6].Value = imagen; TablaDatos.Rows[index].Cells[7].Value = mod; TablaDatos.Rows[index].Cells[8].Value = del; MessageBox.Show("Modificado"); } } catch (ArgumentOutOfRangeException) { MessageBox.Show("Ninguna fila seleccionada"); } }