1、添加gridview 的CustomDrawCell事件,如下
private void gridview1_CustomDrawCell(object sender, RowCellCustomDrawEventArgs e)
{
}
2、在事件里面填写如下代码
DevExpress.Utils.AppearanceDefault appRed = new DevExpress.Utils.AppearanceDefault
(Color.White, Color.Red, Color.Red, Color.Red);//定义单元格如果有内容则显示的颜色
DevExpress.Utils.AppearanceDefault appWhite = new DevExpress.Utils.AppearanceDefault
(Color.Black, Color.White, Color.White, Color.White);//定义单元格没有内容则显示的颜色
int Dates = Int32.Parse(nud_Date.Value.ToString());
for (DateTime dt = dtp_FlightDate.Value.AddDays(-Dates); dt <= dtp_EDate.Value.AddDays(Dates); dt = dt.AddDays(1))
{
if (e.Column.FieldName == dt.ToString("yyyy-MM-dd"))//想要着色的单元格
{
string strTemp = gv_Onduty.GetRowCellValue(e.RowHandle, e.Column).ToString().Trim();
if (string.IsNullOrEmpty(strTemp))
{
DevExpress.Utils.AppearanceHelper.Apply(e.Appearance, appWhite);
return;
}
else
{
DevExpress.Utils.AppearanceHelper.Apply(e.Appearance, appGreen);
return;
}
e.CellValue = null;
}
}
3、效果展示