Allora:
Se a te serve semplicemente che la combo si posizioni
su un elemento precisato di cui conosci l'esatta
posizione il sistema che usi va bene,però ......devi conoscere a priori la posizione
della voce che cerchi e nel caso di un elenco in continuo aggiornamento non è
prorprio possibile.
La listindex determina esattamente la posizione dell'elemento
nella combo.
Quando selezioni un elemento hai quindi a disposizione il valore
che hai inserito con il metodo add e la posizione nella combo.
Itemdata è come una listindex parallela a quella già esistente
alla quale però puoi associare dei tuoi valori(che altrimenti sarebbero uguali a
quelli della listindex).
Quindi risulta comodo e vantaggioso riempire questa lista con i valori
dell'id dell'elemento(se esiste).
Selezionando un elemento dalla combo avrai così a disposizione
un ulteriore valore che sarà appunto quello dell'itemdata il quale nell'esempio citato
avrebbe valore = all'id.
Ne deduci che se ad esempio devi eseguire una query per cercare dettagli di un elemento
selezionato è meglio e più sicuro (CIOè HAI LA CERTEZZA DELL'UNICITA') perchè hai
subito a disposizione l'id invece dalla posizione o del testo inserito.
Pensa solo a una combo con nome e cognome,se devi fare una sql .......
....where nome ='bla.bla' and cognome = 'blo.blo '...devi prima scomporre
la stringa ed essere sicuro dello 'standard' di inserimento da parte di un eventuale
utente 'schiacciabottoni'.
Nella combo cosi vedrai solo il nome e cognome e non id o altre porcherie.
Rst.Open stringa sql, connessione
---Do While Not Rst.EOF
--------Lista.AddItem Rst(campo con ad esempio il cognome).Value
--------Lista.ItemData(Lista.NewIndex) = Rst(campo dove hai l'id).Value
--------Rst.MoveNext
---Loop
Rst.Close
Il processo funziona a ritroso,cioè se conosci l'id ti posizioni sull'elemento
che ha l'itemdata di quel valore.
Questo è il motivo perchè è consigliabile, dove possibile,al momento dell'inserimento di
items nella combo inserire anche l'itemdata.
n.b. -il valore dell'itemdata può essere solo numerico.
n.b. bis -l'itemdata è presente anche nella list ed altri oggetti 'similari'.
Spero di essere stato un pò più chiaro però non farti scrupoli a chiedere ulteriori
delucidazioni o precisazioni per ogni dubbio.
Dopotutto il forum serve SOLO per questo.
ciao.