private void gridPrincipal_DoubleClick(object sender, EventArgs e) { if (gridPrincipal.Rows.Count > 0 && gridPrincipal.CurrentRow != null) { cadastro = gridPrincipal.CurrentRow.DataBoundItem as Entidades.Livro; RealizarCadastro(); } }
//métodos private void CancelarCadastro() { this.Enabled = true; gridPrincipal.Enabled = true; gridPrincipal.Height = GridAlturaNormal; panelCadastro.Visible = false; btnNovo.Enabled = true; btnSalvar.Enabled = false; txtNome.Text = ""; listboxAutores.DataSource = null; cmbCategoria.DataSource = null; cmbAutoresDisponiveis.DataSource = null; cadastro = null; autores = null; autoresDisponiveis = null; gridPrincipal.Focus(); }
private void btnSalvar_Click(object sender, EventArgs e) { this.Enabled = false; using (var db = new Contextos.ContextoGeral()) { if (cadastro == null) { var livro = new Entidades.Livro(); livro.Nome = txtNome.Text; var categoria = cmbCategoria.SelectedItem as Entidades.Categoria; livro.Categoria = db.Categorias.FirstOrDefault(x => x.CategoriaId == categoria.CategoriaId); foreach (var autor in autores) { livro.Autores.Add(db.Autores.FirstOrDefault(x => x.AutorId == autor.AutorId)); } db.Livros.Add(livro); if (db.SaveChanges() > 0) { CarregarTela(); CancelarCadastro(); } } else { var livro = db.Livros.Include("Categoria").Include("Autores").FirstOrDefault(x => x.LivroId == cadastro.LivroId); if (livro != null) { livro.Nome = txtNome.Text; var categoria = cmbCategoria.SelectedItem as Entidades.Categoria; livro.Categoria = db.Categorias.FirstOrDefault(x => x.CategoriaId == categoria.CategoriaId); foreach (var autor in autores) { if (livro.Autores.Count(x => x.AutorId == autor.AutorId) <= 0) { livro.Autores.Add(db.Autores.FirstOrDefault(x => x.AutorId == autor.AutorId)); } } db.SaveChanges(); CarregarTela(); CancelarCadastro(); } } } }