我有DataGridView
的自定义衍生版本。我想要改变绘制某些行的位置:从某个索引向前开始,我想将该行下面的每行移动一行高度,这样我就可以在行之间的结果空间中绘制自定义形状。我想到的是覆盖OnRowPrePaint
并检查行索引是否大于阈值行。如果是,我想将行向下移动:
private void MoveRows(DataGridViewRowPrePaintEventArgs e)
{
if(e.RowIndex >= thresholdRowIndex)
{
e.RowBounds.Y += e.RowBounds.Height; // doesn't work
}
}
这就是问题所在。我以为我可以移动某种边界矩形,但我唯一看到的是RowBounds
并且它是只读的。
我有什么选择?