Wpf изменение цвета фона строки datagrid на основе двух временных типов данных
В моей базе данных "JobTimeStart" и "JobTimeFinish" хранятся как типы данных "Time". Мне нужно, чтобы цвет фона строки изменился на красный в моей DataGrid, если "JobTimeStart" находится в 1 часе езды от "JobTimeFinish".
Я сделал триггер для своей колонки "JobDate", чтобы, если она совпадает с сегодняшней датой, она меняла цвет на оранжевый. Я пытался понять, могу ли я сделать это таким же образом, используя триггеры, но мне не удалось найти ничего похожего на то, что я хочу.
<DataGrid.Columns> <DataGridTextColumn Header="ID" Binding="{Binding ID}"/> <DataGridTextColumn Header="Job" Binding="{Binding JobType}"/> <DataGridTextColumn Header="Date" Binding="{Binding Path=JobDate, StringFormat=\{0:dd/MM/yyyy\}}" x:Name="JobDate"/> <DataGridTextColumn Header="Start Time" Binding="{Binding JobTimeStart}"/> <DataGridTextColumn Header="Finish Time" Binding="{Binding JobTimeFinish}" x:Name="JobTimeFinish"/> </DataGrid.Columns>
Что я уже пробовал:
Я сделал триггер для своей колонки "JobDate", чтобы, если она совпадает с сегодняшней датой, она меняла цвет на оранжевый. Я пытался понять, могу ли я сделать это таким же образом, используя триггеры, но мне не удалось найти ничего похожего на то, что я хочу.
<DataGrid.RowStyle> <Style TargetType="{x:Type DataGridRow}"> <Setter Property="Height" Value="40"></Setter> <Setter Property="FocusVisualStyle" Value="{x:Null}"/> <Style.Triggers> <DataTrigger Binding="{Binding JobDate.Date}" Value="{x:Static System:DateTime.Today}"> <Setter Property="Background" Value="#ff8d00"/> </DataTrigger> </Style.Triggers> </Style> </DataGrid.RowStyle>