dev Gridcontrol根据其cell里面的值显示不同颜色
Posted wonderfulday
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了dev Gridcontrol根据其cell里面的值显示不同颜色相关的知识,希望对你有一定的参考价值。
要改变cell值得颜色 需要用到cellTemplate和convert
<DataTemplate x:Key="PercentageCellColorTemplate">
<dxe:TextEdit Name="PART_Editor" Mask="p2" MaskType="Numeric" MaskUseAsDisplayFormat="True" FontWeight="Bold" Foreground="{Binding Value, Converter= {StaticResource colorConvert}}">
</dxe:TextEdit>
</DataTemplate>
Foreground="{Binding Value} 这个value就是这个cell里面的值,在convert中可以根据值得情况来返回不同的颜色值
convert类定义形式如下:
public class ColorConvert : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
string returnValue = "Black"; //默认为black
if (value != null)
{
string sValue = value.ToString();
if (sValue != "")
{
double dValue;
if (double.TryParse(value.ToString(), out dValue))
{
if (dValue > 0)
returnValue = "Red";
else if (dValue < 0)
{
returnValue = "Green";
}
else
{
returnValue = "Black";
}
}
}
}
return returnValue;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
return null;
}
}
设置改列的cellTemplate属性
<dxg:GridColumn Header="colorTest" FieldName="test" CellTemplate="{StaticResource PercentageCellColorTemplate}">
</dxg:GridColumn>
通过上面过程Foreground属性会根据当前cell的值 来得到不同的属性值 从而显示不同的颜色。
以上是关于dev Gridcontrol根据其cell里面的值显示不同颜色的主要内容,如果未能解决你的问题,请参考以下文章
对Dev的GridControl/GridView控件进行分组并展开操作
C#中的dev控件,怎么获取gridcontrol过滤后的数据源
dev GridControl中的GridView怎么实现批量删除、修改GridView表中的任意数据后保存。求大神解决