private void deletarItem() { if (pedidoItens != null && pedidoItens.Count > 0) { try { PedidoItem itemDeletado = dbgListaProdutos.SelectedRows[0].DataBoundItem as PedidoItem; DialogResult resultado = MessageBox.Show("Deseja remover este item da lista de produtos? " + itemDeletado.ProdutoNome, "Remover Item!", MessageBoxButtons.YesNo, MessageBoxIcon.Warning); if (resultado == DialogResult.Yes) { pedido.ValorTotal -= itemDeletado.ValorTotal; pedido.ValorTotalComDesconto -= itemDeletado.ValorTotalComDesconto; txtValorTotal.Text = pedido.ValorTotal.ToString(); txtValorFinal.Text = pedido.ValorTotalComDesconto.ToString(); pedidoItens.Remove(itemDeletado); dbgListaProdutos.DataSource = null; dbgListaProdutos.DataSource = pedidoItens; dbgListaProdutos.Update(); dbgListaProdutos.Refresh(); //Retirar item do estoque reservado try { EstoqueReservadoNegocio estoqueReservadoNegocio = new EstoqueReservadoNegocio(); EstoqueReservado estoqueReservado = new EstoqueReservado(); estoqueReservado.IDFilial = filialLogada.IDFilial; estoqueReservado.IDProduto = itemDeletado.IDProduto; estoqueReservado.Quantidade = itemDeletado.Quantidade * (-1); string retorno = estoqueReservadoNegocio.Inserir(estoqueReservado); int IDProduto; if (int.TryParse(retorno, out IDProduto)) { return; } } catch (Exception ex) { MessageBox.Show("Erro ao remover produto do estoque reservado. Detalhes: " + ex.Message); } } else { return; } } catch (Exception ex) { MessageBox.Show("Erro ao excluir item da lista. Detalhes: " + ex.Message); } } else { MessageBox.Show("Não existe produto na lista para ser removido."); } }