Bonjour,
J' ai une application WPF qui travaille avec des services WCF et Entity framowork.
j'echange des object facture entre les 2 ( une facture = un fournisseur et une facture = plusieurs article. classique);
Au start de l'appli je charge la liste des fournisseur dans une prop static ;
Program.cs
je la charge via ce code au callback du WCFCode:
1
2 internal static ObservableCollection<Fournisseur> lstFourn;
Donc je charge ma liste des fournisseurs en cache.Code:
1
2
3
4
5 void ReceiveFournisseur( list<Fournisseur> lst) { Program.lstFourn = new ObservableCollection<Fournisseur>(lst); }
jusque la pas de probleme j'arrive a les envoye au service wcf pour les enregistrer etc.....
LE probleme :
Quand je recupere un object facture depuis mon WCF et que je veut binder l'objet a ma form, le nom du fournisseur ne s'affiche pas dans un Combobox mais bien dans une textbox.
sauf si je recherche le fournisseur de la facture dans mon cache et que je le re assigne a ma facture.
donc pour que le cbx bind il faut que je reassigne le fournisseur de la facture à affiché avec le fournisseur que j'ai dans le cache.Code:
1
2
3
4 Fournisseur f = Program.lstFounissuer.first(p => p.guid == factureToShow.Fournisseur.GUID) factureToShow.Fournisseur = f;
code du cbx :
Code:
1
2
3
4
5
6
7
8
9
10
11 IsEditable="False" DisplayMemberPath="Name" SelectedItem="{Binding Path=Fournisseur}" SelectedIndex="-1" // Code Behind maCbx.Itemsource = Program.lstFourn; this.datacontext = factureToShow;
idées ???