![]()
Come da oggetto, ho la necessità di popolare una combobox dinamicamente prendendo i dati da un db ma devo farlo da codice poiché uso la versione express e non posso creare un'oggetto usando la connessione via odbc.
Sono riuscito ha eseguire parte del mio percorso ma credo mi sfugga un dettaglio perché riesco a popolare la combo box ma risulta popolata con l'ultimo elemento della collezione.
Il codice è questo:
Classe che identifica il tipo:
Sub per caricare la combo:codice:Public Class tipologia Private id_tipologia As String Private descrizione_tipologia As String Property tipologia() As String Get Return id_tipologia End Get Set(ByVal value As String) id_tipologia = value End Set End Property Property descrizione() As String Get Return descrizione_tipologia End Get Set(ByVal value As String) descrizione_tipologia = value End Set End Property End Class
il risultato è una combobox con 17 elementi ma tutti con chiave e valore relativi all'ultimo elemento della lista.codice:Private Sub ftmAttivazioneTF_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Dim coll As New Collections.Generic.List(Of tipologia) Dim tipo As New tipologia() sql = "select id_tipo_elaborazione,descrizione from cen_tipi_elaborazione order by id_tipo_elaborazione" bind() 'metodo per popolare un DataTableReader nominato dr While (dr.Read()) tipo.tipologia = dr("id_tipo_elaborazione") tipo.descrizione = dr("descrizione") coll.Add(tipo) End While cmbTipologia.DataSource = coll cmbTipologia.DisplayMember = "descrizione" cmbTipologia.ValueMember = "tipologia" End Sub
![]()

Rispondi quotando
