C#WinForms DataGridView cell表格单元格背景颜色渲染太慢

 

private void DGV_CellPainting(object sender, DataGridViewCellPaintingEventArgs e)
        {

            if (e.ColumnIndex >= 0 && DGV.Columns[e.ColumnIndex].Name == "字段名称")
            {
                if (Collections.Entity.to_double(e.Value) > 0)
                {
                    e.CellStyle.BackColor = Color.Red;
                }
                else
                { }
            }
          

        }

这个方法好像更好一些

DataGridView 表格事件 RowPrePaint

private void DGV_RowPrePaint(object sender, DataGridViewRowPrePaintEventArgs e)
        {
            if (e.RowIndex >= 0)
            {
                 
                if (DGV.Rows[e.RowIndex].Cells["字段名称"].Value.ObjToInt()>1)//判断
                {
                    DGV.Rows[e.RowIndex].DefaultCellStyle.BackColor = Color.Red;
                }
            }
            
        }

 

其它方法:

通过DataGridView控件   CellFormatting 事件来渲染
private void dgvFaFangD_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
        {
            dgv2.Rows[0].Cells["colcoumn"].Style.ForeColor = Color.Red; //20ms
        }   

 

posted @ 2023-07-17 16:28  txwtech  阅读(59)  评论(0编辑  收藏  举报