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

Associar Códigos às Descrições Numa Combo


D4rk Schn31d3r

Pergunta

no evento load do meu form:

Dim frmPrincipal As New frmPrincipal

Try
    frmPrincipal.scnSCComercial.Open()

    Dim scmFuncao As New SqlCommand
    scmFuncao.Connection = frmPrincipal.scnSCComercial
    scmFuncao.CommandType = CommandType.StoredProcedure
    scmFuncao.CommandText = "funcao_sps"

    Dim sdrFuncao As SqlDataReader
    sdrFuncao = scmFuncao.ExecuteReader(CommandBehavior.CloseConnection)

    Do While sdrFuncao.Read()
        Me.cboNomeFuncao.Items.Add(sdrFuncao("Nome_Funcao"))
        '???
    Loop

    sdrFuncao.Close()
Catch ex As Exception
    '...
End Try
Nessa minha sp: funcao_sps, ela retorna os campos id_funcao e nome_funcao (cujos valores já estão sendo exibidos corretamente na minha combo através do método add), o q eu queria agora era associar o respectivo código (id_funcao) em cada uma das funções, como consigo fazer isso? Agradeço se alguém puder dar 1 help. OBS: no vb6, eu fazia assim:
Do While Not rs.EOF
    cboNomeFuncao.AddItem rs("nome_funcao")
    cboNomeFuncao.ItemData(cboNomeFuncao.NewIndex) = rs("id_funcao")
            
    rs.MoveNext
Loop

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

D4rk, veja este tópico aqui: http://scriptbrasil.com.br/forum/index.php?showtopic=47328. Acho que aqui você encontrará a resposta para o seu problema.

E, sim, esta é a seção de .NET (provavelmente você tinha postado isso na seção de VB, por isso o nosso brother William moveu para esta seção - a propósito, valeu William smile.gif). Aqui trata-se de qualquer assunto relacionado a .NET Framework, Visual Studio.NET e suas linguagens (VB.NET, C#, Boo, Nemerle, etc.).

Certo? wink.gif

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

obrigado Graymalkin, mas resolvi o problema definindo um sqlDataAdapter e um DataSet:

Dim frmPrincipal As New frmPrincipal

Try
   frmPrincipal.scnSCComercial.Open()

   Dim scmFuncao As New SqlCommand
   scmFuncao.Connection = frmPrincipal.scnSCComercial
   scmFuncao.CommandType = CommandType.StoredProcedure
   scmFuncao.CommandText = "funcao_sps"

   Dim sdaFuncao As New SqlDataAdapter
   sdaFuncao.SelectCommand = scmFuncao

   Dim dsFuncao As New DataSet
   sdaFuncao.Fill(dsFuncao, "funcoes")

   Me.cboNomeFuncao.DataSource = dsFuncao.Tables("funcoes")
   Me.cboNomeFuncao.DisplayMember = "Nome_Funcao"
   Me.cboNomeFuncao.ValueMember = "ID_Funcao"
Catch ex As Exception
   '...
End Try
, mas estou com outro problema no evento SelectedIndexChanged dessa combo:
If cboNomeFuncao.SelectedIndex <> 0 Then
   gNumero = Me.cboNomeFuncao.SelectedValue
   Me.Close()
End If

, quando ela passa pelo Me.Close(), isto é, quando tento fechar o form depois q selecionei um item da combo, dá a seguinte mensagem de erro:

An unhandled exception of type 'System.NullReferenceException' occurred in system.windows.forms.dll

Additional information: Referência de objeto não definida para uma instância de um objeto

- Alguém tem alguma idéia de como resolver isso?

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,1k
    • Posts
      651,8k
×
×
  • Criar Novo...