Problema com DataSet em .NET

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
 
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....
 
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?
 
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...
 
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.
 
Back
Topo