Essaye de remplacer ca:
listPersonnes.ItemsSource = e.Result;
Par ca:
listPersonnes.DataContext = e.Result;
Puis, sur ta ListBox, rajoute ca:
ItemsSource="{Binding}"
Version imprimable
Essaye de remplacer ca:
listPersonnes.ItemsSource = e.Result;
Par ca:
listPersonnes.DataContext = e.Result;
Puis, sur ta ListBox, rajoute ca:
ItemsSource="{Binding}"
Alors là, je comprend plus :?
Bo, faut pas oublier que ca reste une Beta: p-e que ca marchera correctement dans la finale......
Bon j'ai "résolu" ton problème.
Tout simplement, la classe proxy qui est généré pour ton service
BindingGrid.ServiceReference1.Personnes
contient bien les même champs que ta classe Personnes, mais ils s'appellent pas pareil.
Ici en l'occurrence, contactName s'appelle contactNamek__BackingField.
Donc il faut mettre ce nom en Binding. C'est pas top, mais peut-etre il y a un moyen pour que les champs gardent le même nom.
Et la suite de la réponse tant qu'à faire.
Il faut simplement décorer ta classe Personne avec les attributs DataContract et DataMember.
Code:
1
2
3
4
5
6
7 [Serializable] [DataContract] public class Personnes { [DataMember] public string contactName { get; set; } }
Par contre je sais pas si Serializable est encore utile.
Du coup dans la projet Silverlight, la propriété s'appelle contactName.
Voilà.
En effet, on va attendre sa réponse.
Et, pour info, lorsque l'on utilise [DataContract], pas besoin de [Serializable] ;)
Merci à vous maintenant ca fonctionne à 100% ;) par contre incompréhensible car après un formatage ca a fonctionné :roll: