DataGridView第一列总是更大

时间:2012-02-23 09:54:42

标签: winforms datagridview

我正在尝试使DataGridView的第一行更大。我尝试使用OnScroll,但它并不总能达到标准。我是否可以使用更改行第一个索引事件代替OnScroll?

private int lastRow = -1;
private void dgvN_Scroll(object sender, ScrollEventArgs e)
{
    int firstVisibleRow = dgvN.HitTest(dgvN.RowTemplate.MinimumHeight,
        dgvN.RowHeadersWidth).RowIndex;

    if (lastRow != firstVisibleRow && firstVisibleRow != -1)
    {
        dgvN.Rows[firstVisibleRow].Height = 50;
        if (lastRow != -1)
        {
            dgvN.Rows[lastRow].Height = 20;
        }
        lastRow = firstVisibleRow;
    }
}

1 个答案:

答案 0 :(得分:2)

更改

int firstVisibleRow = dgvN.HitTest(dgvN.RowTemplate.MinimumHeight,
    dgvN.RowHeadersWidth).RowIndex;

int firstVisibleRow = dgvN.FirstDisplayedScrollingRowIndex;

(至少,我认为这是你想要的行为,基于你的代码在粘贴到我的测试项目时的行为方式以及你的评论“它并不总能达到标记”)