数据网格视图VB.net 2013,在窗口中可以看到多少行?

时间:2014-08-28 12:12:25

标签: vb.net visual-studio-2013

我的表格窗口上有10行的datagridview控件。

现在假设表单中datagridview的大小只能向用户显示5行,用户必须使用垂直滚动条查看其他5行。

现在我的问题是:

根据滚动条的位置,有没有办法知道用户当前可以看到哪5行。

实际上在我的程序中,我正在连续更新所有行的值逐个更新。

现在我想只更新窗口中可见的行。那么如何根据滚动条位置知道哪些行是可见的。

提前致谢

1 个答案:

答案 0 :(得分:2)

DataGridView控件公开VerticalScrollingOffset属性,该属性可用于确定视图滚动的距离。如果您知道DataGridView中每行的高度(以像素为单位),则可以计算当前可见的表格行并刷新它们。

每行的高度可以通过DataGridViewRow属性Height确定。默认为字体高度加上9像素 - 如果您在所有行中使用相同的字体大小,则应保持一致。

编辑:进一步深入了解文档后,每个DataGridViewRow都会公开Displayed属性,当该行显示时,该属性会返回 true 用户的屏幕。检查会更容易!

MSDN on DataGridViewRow.Displayed property