Bonjour,
Je débute sur le databinding et j'ai besoin d'accéder à des objets imbriqués qui contiennent plusieurs listes :
Donc pour résumer au format DTD ça me donne :
Code c# : 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
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86 public class Picture : INotifyPropertyChanged { #region Members private int width { get; set; } private int height { get; set; } private string filename { get; set; } private string extension { get; set; } private FileStream stream { get; set; } private BitmapImage image; public int Width { get { return width; } set { width = value; NotifyPropertyChanged("Width"); } } public int Height { get { return height; } set { height = value; NotifyPropertyChanged("Height"); } } public string Filename { get { return filename; } set { filename = value; NotifyPropertyChanged("Filename"); } } public string Extension { get { return extension; } set { Extension = value; NotifyPropertyChanged("Extension"); } } public BitmapImage Image { get { return image; } set { image = value; NotifyPropertyChanged("Image"); } } #endregion #region Constructors //... #endregion #region Methods //... #endregion #region INotifyPropertyChanged Members //... #endregion } public class PictureGroup : INotifyPropertyChanged { public ObservableCollection<Picture> pictures { get; set; } public PictureGroup() { pictures = new ObservableCollection<Picture>(); } #region INotifyPropertyChanged Members //... #endregion } public class PictureCollection : INotifyPropertyChanged { public ObservableCollection<PictureGroup> groups { get; set; } public PictureCollection() { groups = new ObservableCollection<PictureGroup>(); } #region INotifyPropertyChanged Members //... #endregion }
PictureCollection (PictureGroup*)
PictureGroup (Picture*)
Quelque part dans le code j'ai aussi :
Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 private PictureCollection data = new PictureCollection(); public MyConstructor() { InitializeComponent(); pictureList2.ItemsSource = data.groups; }
Pour l'affichage, je ne sais pas comment le gérer par contre :
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <ScrollViewer HorizontalScrollBarVisibility="Auto"> <ItemsControl x:Name="pictureList2"> <ItemsControl.ItemTemplate> <DataTemplate> <StackPanel Orientation="Vertical"> <!-- Affichage d'un groupe d'image par ligne --> </StackPanel> </DataTemplate> </ItemsControl.ItemTemplate> </ItemsControl> </ScrollViewer>
Merci d'avance pour votre aide
Partager