DEV GridControl绑定的数据,ID相同的行显示相同的颜色(当ID的值不确定时)

public BindingList<StudentDC> StudentList
{
get { return this.bindingSourceList.DataSource as BindingList<StudentDC>; }
set { bindingSourceList.DataSource = value; }
}

private void FrmGridTest_Load(object sender, System.EventArgs e)
{
StudentList = GetStudentList();


}

private BindingList<StudentDC> GetStudentList()
{
BindingList<StudentDC> list = new BindingList<StudentDC>(){
new StudentDC(){Class = "Class 1",ID = 1,Name = "zhangsan"},
new StudentDC(){Class = "Class 1",ID = 1,Name = "zhangsan"},
new StudentDC(){Class = "Class 2",ID = 2,Name = "lisi"},
new StudentDC(){Class = "Class 3",ID = 3,Name = "wangwu"},
new StudentDC(){Class = "Class 3",ID = 3,Name = "wangwu"},
new StudentDC(){Class = "Class 3",ID = 3,Name = "wangwu"},
new StudentDC(){Class = "Class 3",ID = 4,Name = "wangwu"},
new StudentDC(){Class = "Class 3",ID = 4,Name = "wangwu"},
new StudentDC(){Class = "Class 3",ID = 5,Name = "wangwu"},
new StudentDC(){Class = "Class 3",ID = 6,Name = "wangwu"},
new StudentDC(){Class = "Class 3",ID = 6,Name = "wangwu"},
};

return list;
}

private void gridView1_CustomDrawCell(object sender, DevExpress.XtraGrid.Views.Base.RowCellCustomDrawEventArgs e)
{
var tmpList = GetStudentList();
var idList = (from item in tmpList select item.ID).ToList();
idList = new List<int>(idList.Distinct());
var tmp = gridView1.GetRowCellValue(e.RowHandle, "ID");
if (gridView1.GetRow(e.RowHandle) == null)
{
return;
}
for (int i = 0; i < tmpList.Count; i++)
{
if (Convert.ToInt32(gridView1.GetRowCellValue(e.RowHandle, "ID")) % 3 == 1)
{
e.Appearance.BackColor = Color.Bisque;
}

if (Convert.ToInt32(gridView1.GetRowCellValue(e.RowHandle, "ID")) % 3 == 2)
{
e.Appearance.BackColor = Color.CornflowerBlue;
}

if (Convert.ToInt32(gridView1.GetRowCellValue(e.RowHandle, "ID")) % 3 == 0)
{
e.Appearance.BackColor = Color.SkyBlue;
}
}

 

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值