我有一个DataGridView绑定到具有5000行,36列的DataTable上,我想根据其内容更改每行的单元格样式,但是我制作的函数要花很长时间才能运行(100行每5分钟)。
这是我的功能:
private void formatRows()
{
DataGridViewCellStyle GroupCellStyle = new DataGridViewCellStyle();
DataGridViewCellStyle SubTotCellStyle = new DataGridViewCellStyle();
GroupCellStyle.Font = new Font(dataGridView1.Font, FontStyle.Bold);
GroupCellStyle.BackColor = Color.FromArgb(235, 235, 235);
SubTotCellStyle.BackColor = Color.FromArgb(155, 155, 255);
dataGridView1.SuspendLayout();
for (int r = 0; r < dbInterface.ds.Tables["articles"].Rows.Count; r++)
{
if (dbInterface.ds.Tables["articles"].Rows[r].Field<short>("FLGGroup") == 2)
dataGridView1.Rows[r].DefaultCellStyle = GroupCellStyle;
else if (dbInterface.ds.Tables["articles"].Rows[r].Field<short>("FLGGroup") == 0)
dataGridView1.Rows[r].DefaultCellStyle = SubTotCellStyle;
}
dataGridView1.ResumeLayout();
}
我不知道为什么要花这么长时间。 DataGridView正常吗?