DevExpress的gridcontrol里面,如何设置指定行的某列的背景色?

sgyiliya 2012-05-09 07:29:50
假设该gridcontrol里面的gridview1,它已经获取了一张表的数据,如下:

字段1 字段2 字段3
陈 18 男
李 22 男



现在要求在程序里对字段1为“李”的那行的字段3的那一列的背景色设置为红色,这个代码该怎么写?


我现在知道可以设置字段1的这一列的背景色为红色,如下:

private void gridView_1CustomDrawCell(object sender, DevExpress.XtraGrid.Views.Base.RowCellCustomDrawEventArgs e)
{

if (e.DisplayText.IndexOf("李") > -1)
{
e.Appearance.BackColor = Color.Red;

}
}





但是要设置字段3的那一列的背景色设置为红色,这个代码该怎么写?

...全文
1668 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
sgyiliya 2012-05-10
  • 打赏
  • 举报
回复
在楼上的提示下,写了如下代码,基本解决了问题:

先定义一个全局变量 n ;然后:


private void gridView_1CustomDrawCell(object sender, DevExpress.XtraGrid.Views.Base.RowCellCustomDrawEventArgs e)
{

if (e.DisplayText.IndexOf("李") > -1)
{
n = e.RowHandle;

}

if ( e.RowHandle == n && e.Column.FieldName == "字段3" && n != 0 )
{
e.Appearance.BackColor = Color.Red;
}

}


bdmh 2012-05-10
  • 打赏
  • 举报
回复
参数e中有e.Column吧,你根据这个判断列是否和字段3符合
sgyiliya 2012-05-10
  • 打赏
  • 举报
回复
顶一下,希望有人来解答。
sgyiliya 2012-05-09
  • 打赏
  • 举报
回复
本来想找“字段3”这一个列的CustomDrawCell函数,但是由于数据源是动态生成的,字段1,字段2,字段3也是动态生成的,所以没有“字段3”这一个列的CustomDrawCell函数,那该怎么办呢?

110,499

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧