Ir para conteúdo
Fórum Script Brasil
  • 0

Datagridview adicionar linha


rodrigotnoma

Pergunta

Opa, boa noite.

Seguinte, no meu form, tenho um textbox5 que aguarda pela inserção de um código, e com esse código eu utilizo uma query para realizar uma busca no meu BD:

Private Sub TextBox5_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox5.TextChanged

        Dim conn As SqlClient.SqlConnection
        Dim ds As DataSet
        Dim sql As String
        Dim da As SqlClient.SqlDataAdapter

        sql = "select * from tb_produtos where cod_produto='" & TextBox5.Text & "'"

        conn = New SqlClient.SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Nova pasta\SysNatureza\SysNatureza\sysnatureza.mdf;Integrated Security=True;User Instance=True")

        conn.Open()

        da = New SqlClient.SqlDataAdapter(sql, conn)

        ds = New DataSet()

        da.Fill(ds, "tb_produtos")

        DataGridView1.DataSource = ds
        DataGridView1.DataMember = "tb_produtos"

Com esse código eu preencho meu datagrid, mas ocorre um problema e preciso da ajuda de vocês:

Assim que eu coloco o código no textbox5 ele traz o produto com o codigo que eu quero, mas gostaria que assim que fizesse isso, o textbox5 apagaria o codigo que coloquei anteriormente e esperasse por outro codigo, e assim iria adicionando linha ao datagrid, como um caixa de supermercado.

Só que acontece o seguinte: Depois de inserir um codigo ele traz o registro e adiciona ao datagrid, e o codigo que coloquei fica no textbox, se apago ou altero o registro que estava no datagrid some também.

Eu gostaria que ao invés de sumir, eu quero que o registro fique no datagrid e assim que colocar outro codigo, uma nova linha seja adicionada ao datagrid, e assim que colocar o terceiro codigo seja adicionado uma terceira linha e assim por diante.

Desculpe se está confuso.

Obrigado

Rodrigo

Editado por quintelab
Adicionado BBCode Code
Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Você pode armazenar esses registros em um DataTable, e sempre que fizar uma nova busca adicionar mais registros ao DataTable e associar seu DataTable a grid, da forma que esta fazendo ele sempre vai limpar a grid e carrega-la novamente sem os dados anteriores.

Abraços...

Link para o comentário
Compartilhar em outros sites

  • 0

Então quintelab, utilizando DataTable, consegui fazer até aqui:

Private Sub TextBox5_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox5.TextChanged

        Dim conn As SqlClient.SqlConnection
        Dim sql As String
        Dim da As SqlClient.SqlDataAdapter
        Dim dt As New DataTable("tb_produtos")

        sql = "select * from tb_produtos where cod_produto='" & TextBox5.Text & "'"

        conn = New SqlClient.SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Nova pasta\SysNatureza\SysNatureza\sysnatureza.mdf;Integrated Security=True;User Instance=True")

        conn.Open()

        da = New SqlClient.SqlDataAdapter(sql, conn)

        da.Fill(dt)

        DataGridView1.DataSource = dt

Só que mesmo assim, não consegui "segurar" os registros anteriores.....

Você pode me dar uma luz?

Abraços e obrigado.

Editado por quintelab
Adicionado BBCode Code
Link para o comentário
Compartilhar em outros sites

  • 0

Então quintelab, de uma olhada nessa foto:

http://img34.imageshack.us/img34/4260/sistema.jpg

Onde tem um circulo vermelho, é o campo Código.O focus() no Form Load é sempre nele, quando leio um código de barra, o código aparece ali no campo Código e automaticamente faz a busca no BD, adicionando a linha no DataGridView com os dados do produto daquele determinado código lido anteriormente.Por esse motivo usei o evento TextChanged do TextBox(Código).

Você ou alguém tem alguma sugestão da melhor forma de fazer isso?

Obrigado.

Rodrigo

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...