none
Como exibir dados nas textbox de um formulario? RRS feed

  • Discussão Geral

  • Bom dia!

    como preencher as textbox com os dados ao digitar o codigo do registro na textbox do codigo do registro no formulario usando o vb.net e linq to sql?

    ou seja: eu tenho um formulario com duas TextBox, TextBoxCodigo, e textboxNome

    quero que ao digitar o codigo na primeira textbox e o usuario precionar a tecla ENTER, o sistema faz a consulta e se existir exibe o nome na segunda textbox ou preenche as textbox com os dados da pesquisa.

    usando o Linq to sql e vb.net

    Tabela: Cadastro de Actividades

    Campos: CodigoActividade Int , NomeActividade varchar (70)

    na aplicação Fiz o Mapeamento das tabelas usando o (Datacontext)

    a pesquisa deve ser feita ao premirmos a tecla ENTER na textboxcodigo.

    mas não esta a funcionar, sera que estou a usar o evento errado? eu coloquei o codigo da chamada n evento KeyUp da textboxCodigo.

    Eu quero que depois de digitar o codigo do registo e clicar na tecla ENTER ele faz a busca e preenche a outra textbox com o nome da actividade.

    Obrigado quem poder dar um palpite.

     Public Function LocalizarActividadeCodigo(ByVal CodigoActividade As Integer) As DAL.ActividadeEmpresa
                'função para localizar uma actividade pelo codigo ou pelo nome
                Using ctxt As New DAL.DANIROSADataContext
                    Dim actividades = (From actividad In ctxt.ActividadeEmpresas
                                 Where actividad.Codigo = CodigoActividade
                                 Select actividad).FirstOrDefault
                    Return actividades
                End Using
    
            End Function
    
    Private Sub TxtCodigoActividade_KeyUp(sender As Object, e As KeyEventArgs) Handles TxtCodigoActividade.KeyUp
            'aqui este codigo pesquisa o artigo pelo codigo
            If e.KeyCode = Keys.Enter Then
                If TxtCodigoActividade.Text.Length > 0 Then
    
                    Dim a As DAL.ActividadeEmpresa = (New BLL.DANIROSA.ActividadeBLL).LocalizarActividadeCodigo(TxtCodigoActividade.Text.Trim)
                    If a IsNot Nothing Then
                        TxtDescriçãoActividade.Text = a.Nome.ToString
                   
                    End If
                End If
            End If
            'End If
    
        End Sub


    Daniel Rosa Iniciante de programação em vb.net, linq sql e Sql server

    quinta-feira, 9 de janeiro de 2014 07:39

Todas as Respostas

  • Olá Daniel,

    tente usar a tecla enter para tirar o foco TextBoxCodigo e coloca-lo no textboxNome.

    Feito isso coloque seu código

     If TxtCodigoActividade.Text.Length > 0 Then
    
                    Dim a As DAL.ActividadeEmpresa = (New BLL.DANIROSA.ActividadeBLL).LocalizarActividadeCodigo(TxtCodigoActividade.Text.Trim)
                    If a IsNot Nothing Then
                        TxtDescriçãoActividade.Text = a.Nome.ToString
                   
                    End If
                End If

    no evento TextChanged ou LostFocus do TextBoxCodigo.

    Espero que ajude.

    quinta-feira, 9 de janeiro de 2014 14:49
  • Obrigado vou tentar!


    Daniel Rosa Iniciante de programação em vb.net, linq sql e Sql server

    quinta-feira, 9 de janeiro de 2014 20:37
  • Muito obrigado! Olha que funcionou mesmo, usei o evento TextChanged do TextBoxCodigo e ao digitar o codigo ele preenche a textbox nome. era exatamente isso que eu queria, obrigado.....

    Daniel Rosa Iniciante de programação em vb.net, linq sql e Sql server

    quinta-feira, 9 de janeiro de 2014 21:28