bonjour,
j'ai posté mon message dans la rubrique vb dotnet mais il me semble plus approprié de le posté dans la partie wpf !
j'ai un problème qui ne devrait pas être compliqué à résoudre mais voilà déjà plusieurs jours que je me casse les dents sans réussir à trouver une réponse.
je cherche à afficher une liste de personnes avec un id, un nom, un prenom et une date de naissance sur une listbox !
le code xaml suivant fonctionne correctement sachant qu'elle est bindée sur une requête chargée par linq
Code :
le chargement de ma fenêtre appelle le code suivant :
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
16
17
18 <ListBox Margin="8,8,8,8" IsSynchronizedWithCurrentItem="True" Grid.Row="1" ItemsSource="{Binding}" ItemContainerStyle="{DynamicResource ListBoxItemStyle1}" Background="{x:Null}" Name="lstbox" Style="{DynamicResource ListBoxStyle2}"> <ListBox.ItemTemplate> <DataTemplate> <StackPanel Orientation="Horizontal"> <Image Source="Gfx\MSN 2 (Custom).png" Margin="2"/> <StackPanel Orientation="Vertical"> <StackPanel Orientation="Horizontal"> <TextBlock Text="{Binding Path=Nom}" Margin="2"/> <TextBlock Text="{Binding Path=Prenom}" Margin="2"/> </StackPanel> <StackPanel Orientation="Horizontal"> <TextBlock Text="{Binding Path=DatedeNaissance}" Margin="2"/> </StackPanel> </StackPanel> </StackPanel> </DataTemplate> </ListBox.ItemTemplate> </ListBox>
Code :
jusque là pas de problème, je souhaiterais récupérer maintenant en cliquant sur une ligne de ma listbox l'id, le nom ou le prenom et non pas la totalité du contenu de la ligne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Public Sub New() MyBase.New() Me.InitializeComponent() Dim clients = From c In db.tblClientsEtatCivil Order By c.Nom Select c.Id, c.Nom, c.Prenom, c.DatedeNaissance Me.lstbox.ItemsSource = clients End Sub
la propriété lstbox.SelectedItem me renvoie systématiquement une chaîne avec la totalité de la ligne !
j'ai essayé également en créant un label en bindant ElementName sur le champ SelectedItem.id rien n'y fait non plus alors si quelqu'un a une idée je suis preneur !
merci d'avance
Partager