Я пытаюсь управлять фоном ячейки DataGrid в столбце при условии его значения.К сожалению, я получаю что-то вроде этого:
альтернативный текст http://img11.imageshack.us/img11/5997/clipboard01da.png
Что не очень эстетично, я хотел бы, чтобы вся клетка была другого цвета, а не только часть позадитекст.Вот часть кода:
<DataGridTextColumn
Binding="{Binding Path=PrivateMemorySize, StringFormat='#,##0'}"
Header="Memory Size" >
<DataGridTextColumn.ElementStyle>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="HorizontalAlignment" Value="Right" />
<Style.Triggers>
<DataTrigger Binding="{Binding Path=PrivateMemorySize,
Converter={StaticResource isLarge},
ConverterParameter=20000000}" Value="true">
<Setter Property="Background" Value="Yellow" />
</DataTrigger>
</Style.Triggers>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
(isLarge
- это просто преобразователь, который возвращает true
, когда значение ячейки больше, чем параметр)
Если я определяю стиль дляцель DataGridCell, результат тот же.
Есть идеи, что может быть не так?Я не использую ничего необычного, просто DataGrid по умолчанию (который в этом примере связан с объектами CLR для заполнения таблицы).