Charger dans un combobox des valeurs d'une table access, puis en sélectionnant l

Dracdlog Messages postés 5 Date d'inscription samedi 20 août 2005 Statut Membre Dernière intervention 26 mars 2007 - 6 févr. 2006 à 12:03
amylee1984 Messages postés 153 Date d'inscription mardi 1 novembre 2005 Statut Membre Dernière intervention 20 août 2006 - 14 févr. 2006 à 02:41
Bonjour,

Je suis en train de migrer de VB6 a VB.NET, je sais il est un peu tard .
je vous explique mon problème.

Sous VB6 j'utilise un recordset pour pouvoir remplir le combo box,

Private Sub Form Load()

Dim recEmploye As Recordset 'déclaration d'une variable de type recordset pour pouvoir accéder a la BD
Dim requete As String 'variable pour la requete SQL


requete = "select Nom_employe FROM employe order by Nom_employe" 'requete qui va chercher la liste
'des noms de tout les employés
'et qui les classes par noms

Set recEmploye = dbclient.OpenRecordset(requete, dbOpenSnapshot)


'Remplissage du combo box : cbo_nom


While Not recEmploye.EOF = True 'boucle tant que le Snapshot n'est pas vide
cbo_nom.AddItem recEmploye(0) 'Ajout d'une occurence dans le combobox
recEmploye.MoveNext 'Positionnement sur l'enregistrement suivant
Wend


et ensuite pour pouvoir, afficher les valeurs correspondant au comboBox en cliquant dessus, j'utilise ceci :

Private Sub cbo_nom_Click()


Dim recEmploye As Recordset
Dim requete As String
requete = "select * from Employe where Nom_employe='" & cbo_nom.Text & " '"


' initialisation de la variable de la requete



Set recEmploye = dbclient.OpenRecordset(requete, dbOpenSnapshot)
lbl_num = recEmploye(0)
txt_nom = recEmploye(1)
txt_prenom = recEmploye(2)
txt_rue = recEmploye(3)
txt_ville = recEmploye(4)
txt_cp = recEmploye(5)
txt_tel = recEmploye(6)
txt_mail = recEmploye(7)
End Sub

Avec ce code, sous VB6, je peux en cliquant sur un nom a partir du combo box par exemple, et il va m'afficher dans les txt, les champs correspondant qui ont été rentré dans la table Employé ici.

Maintenant je ne comprend pas comment faire sous VB.NET, il y en a qui parle de ADO.NET et d'autre qui a réutiliser un recordset, j'ai parcouru le forum, et j'ai pas vraiment trouvé la réponse a mon probleme ou un indice qui pourrais m'aider, alors je me tourne vers vous.
J'ai déja créer une connexion avec ma base donner a l'aide de l'assistant OldbeConnection.

Merci d'avance

4 réponses

amylee1984 Messages postés 153 Date d'inscription mardi 1 novembre 2005 Statut Membre Dernière intervention 20 août 2006 3
9 févr. 2006 à 22:58
bonjour , j'avais deja fais le meme truc que veux faire en vb.net2003 mais c'esten mode deconécté :
pour afficher par exemple les nom des employer dans un combo , faut d'abord que tu creer un dataset via tu le rempli dans ta form load.
tonDataAdapter.Fill(dataset) = => pour remplir le dataset
apres tu trouveras dans les proprieté du combo , datasources et displaymenbre
tu assoucier ton dataSources à ton dataset.taTable et ton displayMenbre à ton champ (nom)
et voila il sera rempli

pour le code d'affichage des autres champs correspondant le voila



Private
Sub Cbo_id_auteur_SelectedIndexChanged(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles Cbo_id_auteur.SelectedIndexChanged

Dim dat_row()
As DataRow
dat_row = DataSet1.Tables(0).Select("[id auteur]" & "=" & Cbo_id_auteur.Text)
tx_nom.Text = dat_row(0).Item(1)
tx_prenom.Text = dat_row(0).Item(2)
tx_email.Text = dat_row(0).Item(3)
tx_password.Text = dat_row(0).Item(4)


End
Sub

merci
0
Dracdlog Messages postés 5 Date d'inscription samedi 20 août 2005 Statut Membre Dernière intervention 26 mars 2007
10 févr. 2006 à 11:59
Je te remercie, je vais tester tout çà .
0
Dracdlog Messages postés 5 Date d'inscription samedi 20 août 2005 Statut Membre Dernière intervention 26 mars 2007
13 févr. 2006 à 20:59
C'est bon çà marche merci encore!
0
amylee1984 Messages postés 153 Date d'inscription mardi 1 novembre 2005 Statut Membre Dernière intervention 20 août 2006 3
14 févr. 2006 à 02:41
pas de quoi , merci d'acepter la réponse
0
Rejoignez-nous