Bonsoir,
Je sollicite de nouveau votre aide, car depuis 2 jours je tourne en rond et ne comprend plus rien
Pour faire suite au post :
http://www.developpez.net/forums/d12...-raccorde-bdd/
j’ai repris mon appli, en remplaçant l’approche DataSet par des classes crées par EF 4 DbContext et j’ai de nouveau des pbs avec les Combobox (je commence à les haïr :-)
J’ai 2 bases (2 classes) : contact et civilité (seulement une dizaine de lignes) reliés par une contrainte, chacune possédant un champ CiviliteID
Si je crée mon Form Contact en n’affichant dans une TextBox que CiviliteID, ou même le libellé de celle ci venant de l’autre table (navigation table Civilite) tout va bien !
Si j’ajoute un Combobox pour sélectionner la civilité, cela semble marcher mais si je défile un peu vite entre les contacts après une modification, j’arrive à planter l’appli !
Ma question est donc double :
- ai je bien configuré mon combobox ?
- si oui, quelle méthode choisir pour permettre à l’utilisateur de choisir une valeur lisible (et pas un ID) sans Combobox ?
Voilà ce que j’ai fait
Le Combobox est bindé (valeur sélectionnée) sur un ContactBindingSource (voir image ci jointe)
Je charge en local les contacts (seulement 10 pour l’essai) et les attachent au ContactBindingSource
Je charge une liste des civilités (j’ai essayé également avec l’ensemble sous forme de base locale) et l’attache au combobox
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Dim queryCtc = (From c In ctx.Contacts Select c).Take(10) queryCtc.Load() ContactBindingSource.DataSource = ctx.Contacts.Local.ToBindingList
"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Dim QueryCiv = From c In ctx.Civilites Order By c.Ordre Select c.CiviliteID, c.Libelle CbxCivilite.DropDownStyle = ComboBoxStyle.DropDownList CbxCivilite.DataSource = QueryCiv.ToList CbxCivilite.DisplayMember = "libelle" CbxCivilite.ValueMember = "CiviliteID
Si je ne fais que défiler entre les contacts, tout va bien !
Si je sélectionne une autre civilité pour un contact, la CiviliteID du contact est correctement modifiée, mais si je fais défiler de nouveau les contacts, je plante !
J’ai du encore mal configurer mon Combobox :-(
Merci de votre aide (et votre patience)
Bertrand
Partager