Bonsoir a tous les pro du dotNet.
Cela fait quelques jours que je cherche sur le web une manière de Lier un DataGrid au Valeurs d'une "ObservableDictionnary".
Cela est t'il possible ?
Mon besoin nécessite d'afficher que les attribue de "MaClasse" qui est les valeur d "ObservableDictionnary", j'ai pas besoin d'afficher les "Keys" (Je les utilisent pour mettre à jour les éléments de l' "ObservableDictionnary").
Voici le code de "MaClasse":
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 public MaClass { public BitmapSource Col1{ get; set; } public TimeSpan Col2{ get; set; } public int Col3{ get; set; } }
Code XAML de DadaGrid
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 <DataGrid Name="MonDG"> <DataGrid.Columns> <DataGridTemplateColumn Header="Col1" Width="40" IsReadOnly="True" MaxWidth="40" MinWidth="25" CanUserResize="False" > <DataGridTemplateColumn.CellTemplate> <DataTemplate> <Image Source="{Binding Col1}" /> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn> <DataGridTextColumn Header="Col2" Binding="Col2" MinWidth="60" /> <DataGridTextColumn Header="Col3" Binding="Col3" MinWidth="60" FontWeight="SemiBold"/> </DataGrid.Columns> </DataGrid>
Code pour le binding
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 //ça n'a pas marché MonDG.DataContext = DataCollection; // DataCollection c'est une "ObservableDictionnary" //ça n'a pas marché MonDG.ItemsSrouce= DataCollection; // DataCollection c'est une "ObservableDictionnary" //ça n'a pas marché MonDG.ItemsSrouce= DataCollection.Values; // DataCollection c'est une "ObservableDictionnary"
Que doit je faire ?
PS: J'ai réussi a avoir un bind sur les "Keys" seulement. (Après crées une colonne Key dans mon DataGrid)
Merci d'avance.
Partager