Bonjour, je suis en train de développer une application chargée de diffuser des messages dans une interface Silverlight sur le web. Cette application se contente simplement d'extraire le contenu (uniquement) des messages d'une base de données et de les afficher dans une listbox.
J'ai donc fort logiquement et scrupuleusement suivi le tutoriel de Ludovic Lefort à ce sujet, en l'adaptant simplement à ma base de données (en local pour l'instant) et à mes paramètres.
Mais voila, pour une raison mystérieusement mystérieuse, ma listbox n'affiche rien du tout au final, même si elle ne génère aucune erreur proprement dite...
Voici le code de ma page.xaml.cs :
Notez que j'ai essayé à la fois avec ItemsSource et DataContext,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 void Page_Loaded(object sender, RoutedEventArgs e) { ServiceReference1.ServiceClient client = new Silverlight_affichage_panneau.ServiceReference1.ServiceClient(); client.GetMessagesByDatesCompleted += new EventHandler<Silverlight_affichage_panneau.ServiceReference1.GetMessagesByDatesCompletedEventArgs>(client_GetMessagesByDatesCompleted); client.GetMessagesByDatesAsync(); } void client_GetMessagesByDatesCompleted(object sender, Silverlight_affichage_panneau.ServiceReference1.GetMessagesByDatesCompletedEventArgs e) { //liste_messages.ItemsSource = e.Result; liste_messages.DataContext = e.Result; }
Le code de ma requête Linq dans mon service.cs :
La ligne en commentaire n'a pas d'importance, aussi j'utilise ServiceContract et OperationContract
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 public List<string> GetMessagesByDates() { DataClassesDataContext db = new DataClassesDataContext(); var matchingAnnonces = from annonces in db.Panaff_Messages //where annonces.date_debut >= DateTime.Now && annonces.date_fin < DateTime.Now select annonces.contenu; return matchingAnnonces.ToList(); }
mon listbox dans page.xaml :
notez le Binding que j'ai également tenté par après
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <ListBox x:Name="liste_messages" ItemsSource="{Binding}" Width="800" Height="500" />
Et enfin la seule exception qui apparait en mode débug :
qui me laisse penser que j'aurai oublié quelque chose, ce qui est très improbable vu le temps que j'ai mis à chercher dans ce tuto, mais sait-on jamais.client.GetMessagesByDatesAsync() : La méthode ou l'opération n'est pas implémentée.
Si vous avez une idée, j'achète![]()
Partager