我想知道效率,这是进行datagridview单元着色的更好方法吗?
您可以在设计时使用网格上设置的样式。出于某种原因,我不经常使用这些。
或
您可以处理网格中每个单元格的单元格格式化事件并进行比较。
我不知道样式是如何检查和应用样式的,但如果它对每个单元格进行的调用少于单元格格式化事件,那么它看起来会更好。我不确定所以我想我会在这里问。
答案 0 :(得分:0)
CellFormatting
事件确实是一个昂贵的选项,因为每次绘制时都会调用每个可见单元格:如果你在代码中设置样式,我会发现它更容易:
DataGridViewCellStyle cellStyle = new DataGridViewCellStyle
{
Alignment = DataGridViewContentAlignment.MiddleLeft,
BackColor = Color.White,
ForeColor = Color.Black,
SelectionBackColor = Color.FromArgb(224, 224, 224),
SelectionForeColor = Color.Black,
WrapMode = DataGridViewTriState.False,
NullValue = string.Empty
};
myDGV.DefaultCellStyle = cellStyle;
myDGV.ColumnHeadersDefaultCellStyle = cellStyle;