RaouL_BennetH
29-11-2008, 13:43
Ciao a tutti :)
Il mio problema è questo:
Ho degli oggetti che vengono caricati a runtime su di un form.
Alcuni di questi oggetti sono legati ad una fonte dati e da essa traggono determinati valori.
Ora mi succede questo:
Sul form c'è un oggetto di tipo TabControl.
In corrispondenza del TabPage 1, devo caricare determinati dati.
Mi sembrava semplice utilizzando l'evento selected index changed...
...ma, ovviamente il codice che ho scritto viene eseguito ogni volta che questo tab viene selezionato e, di conseguenza, se l'utente aveva variato dei valori dal form, si ritrova con i valori precedenti al cambio tab.
Mi sono detto quindi, vabbè, la funzione la eseguo durante il caricamento del form....
Ovviamente, non funziona, cioè, se lo stesso codice scritto nell'evento selectedIndexChanged lo metto nel Form_Load non ha alcun effetto.
il codice incriminato è:
Sub BindColors(ByVal panel As Panel, ByVal idColor As Integer)
Try
Dim ds As New IndexColorTableAdapter.GetDescription
For Each gp As GroupBox in panel.Controls
For Each txt As TextBox in gp.Controls
Dim tblIndexColors As New DataSet
tblIndexColors.Tables.Add(ds.GetDataById(idColor, g.Text.SubString(0, 2))
txt.DataBindings.Add("Text", tblIndexColors.Tables(0), "Descrizione")
txt.DataBindings.Remove(txt.DataBindings("Text"))
Next
Next
Catch ex As Exception
'blabla
End Try
Grazie mille :)
RaouL.
Il mio problema è questo:
Ho degli oggetti che vengono caricati a runtime su di un form.
Alcuni di questi oggetti sono legati ad una fonte dati e da essa traggono determinati valori.
Ora mi succede questo:
Sul form c'è un oggetto di tipo TabControl.
In corrispondenza del TabPage 1, devo caricare determinati dati.
Mi sembrava semplice utilizzando l'evento selected index changed...
...ma, ovviamente il codice che ho scritto viene eseguito ogni volta che questo tab viene selezionato e, di conseguenza, se l'utente aveva variato dei valori dal form, si ritrova con i valori precedenti al cambio tab.
Mi sono detto quindi, vabbè, la funzione la eseguo durante il caricamento del form....
Ovviamente, non funziona, cioè, se lo stesso codice scritto nell'evento selectedIndexChanged lo metto nel Form_Load non ha alcun effetto.
il codice incriminato è:
Sub BindColors(ByVal panel As Panel, ByVal idColor As Integer)
Try
Dim ds As New IndexColorTableAdapter.GetDescription
For Each gp As GroupBox in panel.Controls
For Each txt As TextBox in gp.Controls
Dim tblIndexColors As New DataSet
tblIndexColors.Tables.Add(ds.GetDataById(idColor, g.Text.SubString(0, 2))
txt.DataBindings.Add("Text", tblIndexColors.Tables(0), "Descrizione")
txt.DataBindings.Remove(txt.DataBindings("Text"))
Next
Next
Catch ex As Exception
'blabla
End Try
Grazie mille :)
RaouL.