【发布时间】:2019-11-21 01:46:51
【问题描述】:
我需要根据单元格文本值设置单元格的背景。对于单个列,我需要根据值显示多个背景。我正在动态加载值。
单元格 1 - 值 1 - 红色
单元格 2 - 值 2- 绿色
单元格 3 - 值 1- 红色。
以上单元格在同一列中。我如何做到这一点?
【问题讨论】:
标签: c# wpf grid styles converters
我需要根据单元格文本值设置单元格的背景。对于单个列,我需要根据值显示多个背景。我正在动态加载值。
单元格 1 - 值 1 - 红色
单元格 2 - 值 2- 绿色
单元格 3 - 值 1- 红色。
以上单元格在同一列中。我如何做到这一点?
【问题讨论】:
标签: c# wpf grid styles converters
使用 IValueConverter 将您的实际值转换为特定颜色。
在后面的代码中:
public class ValueToBgColorConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
// logic here, and return a color, like
return Brushes.Black;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
return null;
}
}
在 XAML 中:
<DataGridTemplateColumn.CellStyle>
<Style TargetType="{x:Type DataGridCell}">
<Setter Property="Background" Value="{Binding Path=Value,Converter={StaticResource ValueToBgColorCoverter}}"/>
</Style>
</DataGridTemplateColumn.CellStyle>
【讨论】: