一般系统开发过程中,用户都有刷新数据表功能,但是使用系统自带的刷新功能(load),会使表格回到第一行,这样严重影响了客户使用。
虽然可以使用dataRow.load,但不能刷新整张表。
另有很多狐友会使用窗口表,并且使用fill进行加载,之后即使刷新表也会使用fill重新加载。其实这不需要,应该使用Load进行加载。
不过因为load的特性,如果表本身没有设置加载条件loadFilter,load后会导致把后台所有数据加载,可能会导致一些权限问题。
下面分享一个简单的刷新功能,代码非常简单,有需要的朋友拿去,有不足的地方请不吝斧正
(一定要先设置该表的LoadFilter,因为本人使用的是窗口表,第一次加载时已经设置完成)
Dim t As Table = Args(0)
Dim flt As String = t.Filter '获取过滤条件
Dim Int As Integer = t.Position '获取行位置
Dim p As point = t.ScrollPosition '获取行在屏幕中位置
t.StopRedraw
t.DataTable.Load(False)
t.Filter = flt
t.Position = Int
t.ScrollPosition = p
t.ResumeRedraw