Gustavuh 0 Denunciar post Postado Junho 12, 2015 Saudações. Tenho uma consulta de cada produto, a cada consulta é retornado um produto e jogado no datagridview. Só que meu problema está ai, na primeira consulta ele traz certinho, quando faço a segunda ele sobrescreve a consulta anterior. Quero com que a cada consulta, ele vá inserindo o produto no datagriview. abaixo segue o meu codigo, faço o projeto em tres camadas. if (e.KeyCode == Keys.Enter) { dgvItemVenda.DataSource = objProdutoBO.selecionarUmProduto(txtCodProduto.Text); } Compartilhar este post Link para o post Compartilhar em outros sites
Ivan.Teles 23 Denunciar post Postado Junho 13, 2015 Então. na lógica você deve ir adicionado itens a uma lista em memoria e depois utiliza essa lista para preencher o datagrid. Compartilhar este post Link para o post Compartilhar em outros sites
Gustavuh 0 Denunciar post Postado Junho 14, 2015 Isso mesmo, essa é a lógica. Fassim: try { var obj = objProdutoBO.selecionarUmProduto(Convert.ToInt64(txtCodProduto.Text)); objLista.Add(obj); dgvItemVenda.DataSource = objLista; } catch (Exception ex) { MessageBox.Show(ex.Message); } } mas no datagridview tá aparecendo Sabe o que possa ser esse erro, moderador? Compartilhar este post Link para o post Compartilhar em outros sites
Ivan.Teles 23 Denunciar post Postado Junho 15, 2015 Seu objLista está sendo preenchido com objeto diferente do que você realmente deseja exibir. Compartilhar este post Link para o post Compartilhar em outros sites
Alisson_Santos 0 Denunciar post Postado Junho 15, 2015 Boa tarde GustavuH. Isso está ocorrendo pois você recebe um objeto preenchido com um unico valor e joga direto para o seu datagrid.Ai que está o seu erro. sempre que for inserir uma informação no datagrid tem que inserir uma nova linha. Te aconselho resgatar essas informações em variaveis e ir preenchendo o data grid de coluna a coluna. Compartilhar este post Link para o post Compartilhar em outros sites
Gustavuh 0 Denunciar post Postado Junho 15, 2015 Conseguir fazer de um mode diferente, ele está adicionando porem duplicadamente. Segue o código: private DataTable dt = null; public void criarDataTable() { dt = new DataTable(); DataColumn dc; dc = new DataColumn(); dc.ColumnName = "ID"; dc.DataType = typeof(int); dc.AutoIncrement = true; dc.AutoIncrementSeed = 1; dc.AutoIncrementStep = 1; dt.Columns.Add(dc); dc = new DataColumn(); dc.DataType = Type.GetType("System.String"); dc.ColumnName = "codigoproduto"; dt.Columns.Add(dc); dc = new DataColumn(); dc.DataType = Type.GetType("System.String"); dc.ColumnName = "descricao"; dt.Columns.Add(dc); dc = new DataColumn(); dc.DataType = Type.GetType("System.String"); dc.ColumnName = "medida"; dt.Columns.Add(dc); dc = new DataColumn(); dc.DataType = Type.GetType("System.String"); dc.ColumnName = "valorunit"; dt.Columns.Add(dc); dc = new DataColumn(); dc.DataType = Type.GetType("System.String"); dc.ColumnName = "pontosproduto"; dt.Columns.Add(dc); } private void txtCodProduto_KeyDown(object sender, KeyEventArgs e) { DataRow dr; Produto itemProduto; if (e.KeyCode == Keys.Enter) { try { Npgsql.NpgsqlConnection con = new Npgsql.NpgsqlConnection(); con.ConnectionString = @""; con.Open(); StringBuilder sb = new StringBuilder(); sb.Append("SELECT codigoproduto, descricao, medida, valorUnit, pontosProduto FROM Produto WHERE codigoProduto = " + txtCodProduto.Text); Npgsql.NpgsqlCommand cmd = new Npgsql.NpgsqlCommand(sb.ToString(), con); Npgsql.NpgsqlDataAdapter da = new Npgsql.NpgsqlDataAdapter(cmd); da.Fill(dt); itemProduto = new Produto(); dr = dt.NewRow(); dr["codigoproduto"] = itemProduto._codigoProduto; dr["descricao"] = itemProduto._descricao; dr["medida"] = itemProduto._medida; dr["valorunit"] = itemProduto._valorUnit; dr["pontosproduto"] = itemProduto._pontosProduto; dt.Rows.Add(dr); dgvItemVenda.DataSource = dt; } catch (Exception ex) { MessageBox.Show(ex.Message); } } } alguma luz de onde está o erro pra não duplicar mais? Compartilhar este post Link para o post Compartilhar em outros sites