1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Problema com DataSet em .NET

Discussão em 'Programação' iniciada por Bro840, 24 de Janeiro de 2013. (Respostas: 4; Visualizações: 532)

  1. Bro840

    Bro840 Power Member

    Boa noite minha gente.

    Estou a criar um programa VB.NET em que no evento New() coloco as seguintes declarações:

    dsFutebol.Tables.Add("COMPETICOES")
    dsFutebol.Tables("COMPETICOES").Columns.Add("COMPETICAO")

    cboCOMPETICAO.DataSource = dsFutebol.Tables("COMPETICOES")
    cboCOMPETICAO.DisplayMember = "COMPETICAO"



    Depois num outro evento coloco:

    dsFutebol.Tables("COMPETICOES").Clear()
    Cmd.CommandText = "blá blá blá"
    Adaptador.Fill(dsFutebol, "COMPETICOES") ----> O meu problema está aqui. Assim que faço .FILL o cboCOMPETICAO como está associado à tabela COMPETICOES, devia logo ficar com os novos valores, mas não o faz... Os novos valores apenas ficam associados assim que todo o bloco é executado. O que neste caso é problemático porque ainda durante este evento vou precisar dos novos valores.
    ....
    ....
    ....
    ....
    ....


    Obrigadp
     
  2. Bro840

    Bro840 Power Member

    Uma nota que reparei agora é que quando executo o segundo evento descrito acima uma segunda vez, quando o metodo .FILL é chamado - Adaptador.Fill(dsFutebol, "COMPETICOES") - desta vez os valores ficam logo disponíveis dentro do mesmo evento.

    É estranho demais....
     
  3. diogo_miguel

    diogo_miguel Power Member

    depois do clear a combo fica sem nada ou com os valores velhos? a tua datatable pode estar a ficar sem colunas...
    já experimentaste fazer acceptchanges à datatable depois do fill?
     
  4. Bro840

    Bro840 Power Member

    Viva!

    Quando chamo o clear a cbo fica logo limpa e a datatable matem a coluna origiral

    fiz o que sugeriste, o acceptchanges e nada...
     
  5. Bro840

    Bro840 Power Member

    O mais estranho é que quando executo o programa, evento dispara evento etc... e este evento que está em questão é disparado uma primeira vez, e enquanto não salta para outro evento os valores não aparecem na combo. Mas assim que é chamado uma segunda e terceira vez, mal o metodo fill é executado a combo fica logo com os novo valores. Não percebo.
     

Partilhar esta Página