两个问题的关键是一样的,可以通过RowHeight (行高)设置
DataGrid1.RowHeight = (DataGrid1.Height - 600) / 10
600是个经验数值,它的值是DataGrid1的标题行高度与水平滚动条的高度和,单位为缇,如果你的标题行不是默认设置可以调一下这个数值.
如果你对标题行高度与水平滚动条的高度及单位的换算不是太了解,可以在设计时手动拖一下DataGrid1的行高,记下它的值乘上当时显示的行数就是DataGrid1的数据区域的高度,再(如运行时)对行高进行设置的时候,用数据区域的高度除以行数就可以得出正确的RowHeight 了.
第二个问题是一样的
DataGrid1.RowHeight = (DataGrid1.Height - 600) / rs.recordcount
就是用数据区域的高度除以你的数据记录数.
你说的很难,特别是在vb6.0下,看下参考里的文章
基本思路是绑定前添加空行,更新时再做空行判断处理.