以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  分页倒序加载的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=82600)

--  作者:凡夫俗子
--  发布时间:2016/3/21 13:36:00
--  分页倒序加载的问题

图片点击可在新窗口打开查看此主题相关图片如下:123123123123.png
图片点击可在新窗口打开查看

分页倒序加载的问题

With DataTables("窗口2_Table1")
    If .LoadPage <> 0 Then
        .LoadOrder = "第一列 desc"
        .LoadReverse = True
        .LoadPage = 0
        .Load
        
    End If
    Tables("窗口2_Table1").sort="第一列 desc"
    Dim nb1 As WinForm.NumericComboBox = e.Form.Controls("NumericComboBox1")
    Dim nb2 As WinForm.NumericComboBox = e.Form.Controls("NumericComboBox2")
    nb1.Value = .LoadPage + 1
    nb2.Value = .TotalPages
    
End With

已设置 
 .LoadOrder = "第一列 desc"
        .LoadReverse = True

这样可以实现倒序加载分页

但是在每一页里的数据 又是升序加载的,如何也倒序加载呢

目前好像只能设置 Tables("窗口2_Table1").sort 的排序方式,那么 界面上会有个箭头,不想用这种方式,如何做到。

--  作者:大红袍
--  发布时间:2016/3/21 14:18:00
--  

AfterLoad事件

 

Tables("窗口2_Table1").Fill("Select _Identify, 第一列 As _Sortkey, 第一列, 第二列, 第三列 f rom {表A}", "数据源", False)


--  作者:凡夫俗子
--  发布时间:2016/3/21 15:45:00
--  

AfterLoad事件

 

Tables("窗口2_Table1").Fill("Select _Identify, 第一列 As _Sortkey, 第一列, 第二列, 第三列 f rom {表A}", "数据源", False)


经测试不行: 这一句只要放上 _Identify 就报错

第一列 As _Sortkey 可以用上,但没效果,实际原数据表中 也不缺少 _Sortkey 列


看来是官方 的倒序加载的每一页中的加载顺序并不是倒序 而还是升序



--  作者:大红袍
--  发布时间:2016/3/21 15:56:00
--  

哦,写错了,要这样写

 

Tables("窗口1_Table1").Fill("Select [_Identify], -1 * (第一列) As _Sortkey, 第一列, 第二列, 第三列 f rom {表A}", "数据源", False)


--  作者:凡夫俗子
--  发布时间:2016/3/21 17:48:00
--  
思路够牛。不过这属于偏方,非常规解决方法

但这么一个简单的需求,要这样去弄,稍显复杂,希望官方能在FOXTABLE内总加载机制上进行解决方好