Bonjour,
Me voici devant une problématique.
Je vous explique.
J'ai une liste de créneaux que je souhaiterais afficher dans un listView tous les créneaux entre 2 dates. Aucun soucis de binding pour les champs de base de type (String, int, ...). Mais le problème c'est quand il y a une liste (Pour un créneau, il peut y avoir plusieurs personnes)
Voici la DTO :
Ensuite j'ai la classe PanierViewControl.xaml.cs
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 public class CreneauDTO { public Decimal MapKey { get; set; } public DateTime HeureDebut { get; set; } public DateTime HeureFin { get; set; } public String Reservation { get; set; } public List<decimal> Occupants { get; set; } }
et enfin la partie xaml, je zappe tout le debut qui n'est pas très interessant.
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 /// <summary> /// Logique d'interaction pour PanierViewControl.xaml /// </summary> public partial class PanierViewControl : UserControl { private IProvider _Provider; private List<CreneauDTO> _panier; public PanierViewControl(IProvider provider) { this._Provider = provider; InitializeComponent(); this._panier = this._Provider.ReadAll() this.ListPanier.ItemsSource = this._panier; }
Le résultat c'est que la 3eme colonne est une collection donc ça affiche un joli Collection...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 <ListView x:Name="ListPanier" Background="#FFF9E2B3" Margin="5"> <ListView.View> <GridView AllowsColumnReorder="true"> <GridViewColumn DisplayMemberBinding="{Binding Path=Reservation}" Header="Reservation " Width="100" /> <GridViewColumn DisplayMemberBinding="{Binding Path=MapKey}" Width="32" Header="id" /> <GridViewColumn DisplayMemberBinding="{Binding Path=Occupants}" Width="170" Header="Personnes" /> </GridView> </ListView.View> </ListView>
Comment peut-on faire pour afficher le détail de la liste dans la colonne . (genre { Pierre, Paul, Jacques } ) ou peu importe mais pas collection :p
J'ai bien pensé à une classe externe, je sais plus le nom POCO ?(gros doute ?)
Mais je ne sais si c'est correct. Pouvez-vous m'éclairer svp ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 public class Creneau { public CreneauDTO data; public Creneau(CreneauDTO dto){ this.data = dto;} public String Occupant { get { return "trucmuche"; } } public String Reservation { get { return data.Reservation; } } public String ID { get { return data.MapKey.toString(); } } }
Partager