2011-02-22 76 views
0

我正在寻找在DataGridView中创建一种滑动滚动效果。我想向下滚动一行,但我希望它慢慢滑动,以便用户清楚它正在滚动。Windows窗体DataGridView滚动

这是不是有可能?我发现你可以使用FirstDisplayedScrollingRowIndex属性直接滚动到一行,但这不是我想要的。

编辑:我想我可以做到这一点,如果我可以找到一种方式滚动之间的行界限。然后,我可以以小的增量以编程方式滚动几次,使其看起来好像在缓慢滚动。

帮助将不胜感激。

回答

0

所以我找到了一个可行的解决方案,虽然它不是一个很好的解决方案。以下代码给出了DataGridView中平滑滚动的外观。

//Insert Row at bottom of DataGridView with a row height of 0 here 

    DataGridView1.Enabled = false; 

    for (int i = 0; i < ROW_HEIGHT; i++) 
    { 
     DataGridView1.Rows[0].Height--; 
     DataGridView1.Rows[LAST_ROW].Height++; 
     Thread.Sleep(20); 
    } 

    DataGridView1.Enabled = true; 

    // Remove first row in DataGridView here 

这种解决方案只是因为我在DataGridView每一个新加入的时间,这就是为什么我可以慢慢降低高度为0,因为它变得无论如何去除去除非常第一行。这基本上给了我固定数量的行,实质上创建了一个固定大小的队列。

相关问题