Buongiorno a tutti. Spero possiate essermi d'aiuto in questo mio banale problema. Ho 3 tabelle relazionate fra loro nello specifico una tabella dipendenti, una tabella reparti ed una tabella ruoli. La tabella dipendente e' formata da  Id,Cognome,Nome,Data assunzione,contratto,ruolo,reparto,id ruolo ed id reparto. La tabella reparto id reparto e descrizione reparto e la tabella ruolo id ruolo e descrizione ruolo.
Per reparto e ruolo utilizzo delle combobox che leggono i dati nelle rispettive tabelle associate.
In fase di inserimento dati nella tabella dipendenti ho la necessità che venga memorizzato sia il nome del reparto/ruolo che il suo corrispondente Id.
Ho inserito quindi la lista parametrica dei codici  inserendo nella public
 Dim IdRp As List(Of Integer) = New List(Of Integer)()
 Dim Idro As List(Of Integer) = New List(Of Integer)()
Sono poi andata nella mia combobox ed ho inserito le due istruzioni
While (dr.Read())
                RepartoComboBox.Items.Add(dr("Descrizione Reparto"))
                IdRp.Add(CInt(dr("ID Reparto")))
Se nel mio inserimento dati in dipendenti vado ad inserire
        cmd.Parameters.AddWithValue("@Reparto", RepartoComboBox.Text)
        cmd.Parameters.AddWithValue("@[Id Reparto]", IdRp(RepartoComboBox.SelectedIndex))
sul secondo valore mi mostra l'errore "nessun mapping esistente del tipo di oggetto System.Windows.Forms.Combobox a un tipo nativo"
Ho inserito una message box per verificare che effettivamente alla selezione della descrizione nella combobox risultasse effettivamente il suo corrispondente valore   ed effettivamente mi legge il giusto Id.
Sto usando Option Strict On
Grazie a chi mi potrà essere di aiuto
Cris