Я видел похожие сообщения, такие как this
Однако они, похоже, не отвечают на мой вопрос.У меня есть сетка данных XAML в приложении WPF
<DataGrid AutoGenerateColumns="True" Grid.Row="1" AlternationCount="2" HeadersVisibility="Column" Name="dgSkillsMatrix" Margin="0,0,0,1" HorizontalGridLinesBrush="White" VerticalGridLinesBrush="White" AlternatingRowBackground="#FFD0D0EB" RowBackground="#FFECECF5" FontSize="12">
<DataGrid.CellStyle>
<Style TargetType="{x:Type DataGridCell}">
<Style.Triggers>
<DataTrigger Binding="{Binding Value}" Value="1">
<Setter Property="Background" Value="Red"/>
</DataTrigger>
<DataTrigger Binding="{Binding Content}" Value="2">
<Setter Property="Background" Value="Green"/>
</DataTrigger>
<DataTrigger Binding="{Binding Text}" Value="1">
<Setter Property="Background" Value="Black"/>
</DataTrigger>
<DataTrigger Binding="{Binding Name}" Value="Temp">
<Setter Property="Background" Value="Black"/>
</DataTrigger>
</Style.Triggers>
</Style>
</DataGrid.CellStyle>
</DataGrid>
Как вы можете видеть, я пробовал несколько разных способов "инициировать" изменение цвета, но ни один из них не срабатывает.Если я добавлю общие настройки в триггеры, это изменит цвет.
Я думаю, что проблема в том, что я связываюсь с сеткой данных из динамического набора данных, который может меняться день ото дня, поэтому я использую таблицу данных (ниже), так как существует разное количествозначит, я не могу использовать объекты для каждой строки, так как никогда не знаю, когда изменится число столбцов / свойств.
this.dgSkillsMatrix.ItemsSource = (dt as IListSource).GetList();
Мне просто нужно знать, как запустить триггер для изменения свойств в зависимости от этого.значение ячейки, созданной из источника данных для списков.