答案 0 :(得分:0)
您只需将一个事件处理程序添加到网格视图的Paint
。
如果你想做的不仅仅是颜色,我们已经走了继承DataGridViewCell
并覆盖其Paint方法的路线,继承自DataGridViewColumn
以使用该单元格,然后使用该列我们的网格视图。
下面是重写方法,但事件处理程序看起来很相似。
protected override void Paint(Graphics graphics,
Rectangle clipBounds, Rectangle cellBounds,
int rowIndex, DataGridViewElementStates cellState, object value, object
formattedValue, string errorText, DataGridViewCellStyle cellStyle,
DataGridViewAdvancedBorderStyle advancedBorderStyle, DataGridViewPaintParts
paintParts)
{
if ((value as WhatEverType).WhatEverField == 9)
{
cellStyle.ForeColor = Color.CornflowerBlue;
}
base.Paint(graphics, clipBounds, cellBounds, rowIndex, cellState, value, formattedValue, errorText, cellStyle, advancedBorderStyle, paintParts);
}