Originariamente inviato da Skyscraper84
La popolo manualmente...
Altrimenti potrei creare una Array e ad ogni inserimento di un nuovo item scrivo l'indice dell'item ed il relativo ID del DB corrispondente.
Che ne pensate?
Che è quello che ti ho proposto...
...solo che con l' array devi andare alla "ricerca" dei tuoi valori.
X jupynet
I tuoi esempi sono ottimi ma per come ho inteso il problema sono troppa roba...
, nel senso che usando la Dictionary bastano poche righe di codice senza usare DataTable o Classi.
Una volta popolata la Dictionary con (TKey, Value) = ("testo email", ID) per gli Items della listbox basta impostarne il DataSorce = la proprietà Keys.ToArray del dizionario, mentre in base all' Item selezionato si risale all' ID semplicemente con "dizionario(item della listbox selezionato)".
codice:
Private Sub Form1_Load() Handles MyBase.Load
'simulazione lettura DB
dizionarioAdd("qui", 1)
dizionarioAdd("quo", 2)
dizionarioAdd("qua", 3)
dizionarioAdd("pippo", 4)
dizionarioAdd("pippo", 5)
dizionarioAdd("paperino", 6)
End Sub
Private Sub dizionarioAdd(ByVal ogg_email As String, ByVal ID As Integer)
If dizionario.Keys.Contains(ogg_email) Then
ogg_email = ogg_email & "(doppio)"
End If
dizionario.Add(ogg_email, ID)
ListBox1.DataSource = dizionario.Keys.ToArray
End Sub
Private Sub Button1_Click() Handles Button1.Click
Console.WriteLine(ottieniID)
End Sub
Private Function ottieniID() As Integer
Return dizionario(ListBox1.SelectedItem)
End Function