datagridview 定位到最后一行,定位不准的原因

时间:2023-03-09 02:51:59
datagridview 定位到最后一行,定位不准的原因

C# 写的 winform 程序,定位到最后一行

dgvGoods.FirstDisplayedScrollingRowIndex = dgvGoods.Rows.Count - 1;

测试中发现,一旦新加行的高度增加了(列宽定死了,但开了自动调整,显示内容超长时,会自动换行,让行高增加),垂直滚动条就不能定位到最底部了,总是会往上一点。如果这种行越来越多,定位也会越来越往上。

设置 CurrentCell 也一样会碰到这个问题。

看来 datagridview 的定位应该是根据行数和默认的行高算出来的,一旦行高出现变化,就会出现定位不准的问题。

我把列宽增大了点,避免了自动换行的问题(也可以关闭自动调整),这样滚动条就总能到底了。