private void btnAgregar_Click(object sender, EventArgs e) { var libroInfoForm = new LibrosInfoForm(); if (libroInfoForm.ShowDialog() != DialogResult.Cancel) { if (libroInfoForm.Libro != null) { if (IsConnected) { librosTableAdapter.Insert(libroInfoForm.Libro.Titulo, libroInfoForm.Libro.AutorId, libroInfoForm.Libro.TituloOriginal); librosTableAdapter.Fill(librosDataSet.libros); // IMPORTANTE!!! Si se quita esta línea no se actualizará el dataGridView. } else { var libroRow = librosDataSet.libros.NewlibrosRow(); libroRow.Titulo = libroInfoForm.Libro.Titulo; if (libroInfoForm.Libro.AutorId.HasValue) libroRow.Autor = libroInfoForm.Libro.AutorId.Value; libroRow.TituloOriginal = libroInfoForm.Libro.TituloOriginal; librosDataSet.libros.Rows.Add(libroRow); dgvLibros.DataSource = librosDataSet.libros; } } } }
private void btnModificar_Click(object sender, EventArgs e) { var currentRow = dgvLibros.CurrentRow; if (currentRow != null) { Libro libro = new Libro { Titulo = currentRow.Cells["tituloDataGridViewTextBoxColumn"].Value.ToString(), AutorId = Convert.ToInt32(currentRow.Cells["autorDataGridViewTextBoxColumn"].Value), TituloOriginal = currentRow.Cells["tituloOriginalDataGridViewTextBoxColumn"].Value.ToString () }; var libroInfoForm = new LibrosInfoForm(libro); if (libroInfoForm.ShowDialog() == DialogResult.OK) { if (libroInfoForm.Libro != null) { if (IsConnected) { librosTableAdapter.Update(libroInfoForm.Libro.Titulo, libroInfoForm.Libro.AutorId, libroInfoForm.Libro.TituloOriginal, Convert.ToInt32( currentRow.Cells["idDataGridViewTextBoxColumn"].Value)); librosTableAdapter.Fill(librosDataSet.libros); // IMPORTANTE!!! Si se quita esta línea no se actualizará el dataGridView. } else { librosDataSet.libros[currentRow.Index].Titulo = libroInfoForm.Libro.Titulo; if (libroInfoForm.Libro.AutorId.HasValue) librosDataSet.libros[currentRow.Index].Autor = libroInfoForm.Libro.AutorId.Value; librosDataSet.libros[currentRow.Index].TituloOriginal = libroInfoForm.Libro.TituloOriginal; dgvLibros.DataSource = librosDataSet.libros; } } } } }