Bonjour
Je suis debutant en WPF et je cherche le moyen de changer la couleur du texte d'une cellule d'un datagrid en function de la valeur d'une autre cellule de ce meme Item.
En fait, j'ai une colonne avec une valeur booléenne, et je cherche à ce que sa valeur influe sur la couleur du texte d'une autre cellule qui se trouve sur la meme ligne.
//Ma source de données
//Mon code Xaml de mon dataGrid est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 planificateurData = new DataView(); planificateurData.Table = new DataTable("OverdueTasks"); planificateurData.Table.Columns.Add("ID", typeof(long)); planificateurData.Table.Columns.Add("Name", typeof(string)); planificateurData.Table.Columns.Add("Job", typeof(string)); planificateurData.Table.Columns.Add("Equipment", typeof(string)); planificateurData.Table.Columns.Add("LastMaintenance", typeof(DateTime)); planificateurData.Table.Columns.Add("NextMaintenance", typeof(DateTime)); planificateurData.Table.Columns.Add("Hours", typeof(string)); planificateurData.Table.Columns.Add("HoursOverdue", typeof(int)); planificateurData.Table.Columns.Add("UseDate", typeof(bool)); planificateurData.Table.Columns.Add("UseHours", typeof(bool)); planificateurData.Table.Columns.Add("HightlightDate", typeof(bool)); planificateurData.Table.Columns.Add("HightlightHours", typeof(bool))
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <DataGrid x:Name="taches" Margin="10,41,10,301" HeadersVisibility="Column" SelectionMode="Single" SelectionChanged="TachesList_SelectedChange"> <DataGrid.Columns> <DataGridTextColumn x:Name="NameTache" Binding="{Binding Name}" ClipboardContentBinding="{x:Null}" Header="Nom" Width="300" IsReadOnly="True"/> <DataGridTextColumn x:Name="JobTache" Binding="{Binding Job}" ClipboardContentBinding="{x:Null}" Header="Travail" Width="300" IsReadOnly="True"/> <DataGridTextColumn x:Name="EquipmentTache" Binding="{Binding Equipment}" ClipboardContentBinding="{x:Null}" Header="Equipement" Width="300" IsReadOnly="True"/> <DataGridTextColumn x:Name="LastTache" Binding="{Binding LastMaintenance, StringFormat=\{0:dd/MM/yyyy\}}" ClipboardContentBinding="{x:Null}" Header="Dernier Entretien" Width="200" IsReadOnly="True"/> <DataGridTextColumn x:Name="NextTache" Binding="{Binding NextMaintenance, StringFormat=\{0:dd/MM/yyyy\}}" ClipboardContentBinding="{x:Null}" Header="Prochain Entretien" Width="200" IsReadOnly="True"/> <DataGridTextColumn x:Name="HoursTache" Binding="{Binding Hours}" ClipboardContentBinding="{x:Null}" Header="Heures tournées/installées" Width="200" IsReadOnly="True"/> <DataGridTextColumn x:Name="OverHoursTache" Binding="{Binding HoursOverdue}" ClipboardContentBinding="{x:Null}" Header="Heures dépassées" Width="200" IsReadOnly="True"/> </DataGrid.Columns> </DataGrid>
C'est la valeur HightLightDate qui doit influencer sur la couleur du texte de la cellule NextTache
Merci de votre aide
Partager