读书人

C# DataGridView 列自动排序时单元格背

发布时间: 2013-10-21 17:03:30 作者: rapoo

C# DataGridView 列自动排序时单元格背景色丢失
遇到的问题如题.
一开始我将绘制背景色的话写在 查询按钮下,然后逐行设置背景色.

    
if (DV.Rows[i].Cells["拣货状态"].EditedFormattedValue.ToString() == "正在拣货")
{
DV.Rows[i].DefaultCellStyle.ForeColor = Color.Red;
}

但是使用这种方式后,当用户点击列标头进行排序时,行的背景色丢失.
然后将代码写到
    
private void DV_RowPrePaint(object sender, DataGridViewRowPrePaintEventArgs e)
{
if (DV.Rows[e.rowindex].Cells["拣货状态"].EditedFormattedValue.ToString() == "正在拣货")
{
DV.Rows[i].DefaultCellStyle.ForeColor = Color.Red;
}
}


但是由于数据量比较多,整个数据表格都在闪.

请问有没有什么办法 让在 点击 列表头进行排序时 背景色不丢失啊.
[解决办法]
绑定颜色的代码写在_DataBindingComplete事件中 我以前这么用过 没出现过你的情况呀?

读书人网 >C#

热点推荐