Hello,
j'ai ma classe Data de la forme suivante :
et dans le XAML une combobox pour lister les clés de mon dico de rondes, et un listView présentant l'ObservableCollection associée à l'élément. Mais je ne parviens pas à écrire le binding pour refléter la sélection d'un item dans la Combobox et l'affecter
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 public class RondierData : INotifyPropertyChanged { public Dictionary<int, ObservableCollection<Ronde>> Rondes {get; set;} public ObservableCollection<Ronde> CurrentEditRonde {get; set;} //... }
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 <ComboBox HorizontalAlignment="Left" MinWidth="100" Name="cbRonde" ItemsSource="{Binding Rondes}" SelectedItem="{Binding Path=CurrentEditRonde, Mode=TwoWay}"> <ComboBox.ItemTemplate> <DataTemplate> <TextBlock Text="{Binding Key, StringFormat='Ronde {0}'}" /> </DataTemplate> </ComboBox.ItemTemplate> </ComboBox> <ListView DockPanel.Dock="Bottom" Name="listEtapesRonde" ItemsSource="{Binding CurrentEditRonde, Converter={StaticResource ExistingRondeFilter}}"> <ListView.View> ... </ListView.View> </ListView>
Parenthèse : Au début je n'avais que le dico, pas la propriété CurrentEditRonde, et la listView était bindé en direct sur cbRonde.SelectedItem.Value, mais j'avais un souci pour notifier que la collection avait changée alors qu'elle était dans le dico, d'où l'idée de référencer la Collection en cours d'édition dans une nouvelle propriété.
Je pourrais procéder en code-behind, mais autant que possible je voudrais savoir si cette problématique peut être solvée en XAML et si oui comment.
Merci
Partager