Salut à toutes et à tous,
Soit un DataGrid lié à un CollectionView.
Une des colonnes (colonne PCode) doit être éditable, mais on ne peut pas y mettre n'importe quoi. Il faut saisir une donnée présente dans une autre datatable. Je veux donc mettre un combobox sur le edit de la cellule. Mon problème est que je n'arrive pas à ramener les données de la datatable. Malgré mes différentes recherches et essais, ma colonne change bien pour une combobx en mode édition, mais la combobox reste désespérément vide.
Voici la partie xaml de mon datagrid
Code xaml : 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 <DataGrid x:Name="MdbPointsDataGrid" Margin="15,312,103,15" Drop="OnDrop" SelectionChanged="MdbPointsDataGrid_SelectionChanged" ItemsSource="{Binding}" AutoGenerateColumns="False"> <DataGrid.Columns> <DataGridTextColumn Header="Numéro" Binding="{Binding Numero}" IsReadOnly="True" /> <DataGridTemplateColumn Header="PCode"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBlock Text="{Binding PCode}" /> </DataTemplate> </DataGridTemplateColumn.CellTemplate> <DataGridTemplateColumn.CellEditingTemplate> <DataTemplate> <ComboBox x:Name="PCodesCombobox" SelectedItem="{Binding PCode}" ItemsSource="{Binding PCodesCV}" DisplayMemberPath="pcode_description" SelectedValuePath="num_pcode" /> </DataTemplate> </DataGridTemplateColumn.CellEditingTemplate> </DataGridTemplateColumn> <DataGridTextColumn Header="X" Binding="{Binding X}" IsReadOnly="True" /> <DataGridTextColumn Header="Y" Binding="{Binding Y}" IsReadOnly="True" /> <DataGridTextColumn Header="Z" Binding="{Binding Z}" IsReadOnly="True" /> <DataGridTextColumn Header="Nom complet" Binding="{Binding Nom}" IsReadOnly="True" /> </DataGrid.Columns> <DataGrid.Resources> <Style TargetType="DataGridRow"> <Style.Triggers> <DataTrigger Binding="{Binding PCode}" Value="50"> <Setter Property="Background" Value="Red"/> </DataTrigger> </Style.Triggers> </Style> </DataGrid.Resources> </DataGrid>
PCodesCV est un CollectionView qui retourne les données triées de la datatable, et j'ai vérifié qu'il contienne bien les données.
Où est mon erreur ?
Comment dois-je faire ?
Merci de vos z'avis z'avisés.
Jean-Marc
Partager