以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]使用外部数据表,如何是新增行在窗口中位于第一条的位置?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=67015)

--  作者:liuxianjie1980
--  发布时间:2015/4/17 15:19:00
--  [求助]使用外部数据表,如何是新增行在窗口中位于第一条的位置?

有个列为“时间”,加载排序我知道的,关键是在动态加载的情况下,如何实现?

 

另:请教关于动态加载这个名称的意思,我的理解是每隔多长时间就向datatable取数据,比如:2sec,1分钟,是不是这样理解


--  作者:Bin
--  发布时间:2015/4/17 15:20:00
--  
dim r as row = tables("X").addnew
r.move(0)


动态加载的意思是初始不加载,然后自己编写代码控制什么时候加载
--  作者:狐狸爸爸
--  发布时间:2015/4/17 15:26:00
--  
或者用插入行:

Tables("表A").Position = 0
Tables("表A").InsertNew()

--  作者:liuxianjie1980
--  发布时间:2015/4/17 15:28:00
--  
r。move(0)去掉??
--  作者:Bin
--  发布时间:2015/4/17 15:29:00
--  
那是2个 方法.互不相干.




--  作者:liuxianjie1980
--  发布时间:2015/4/17 15:46:00
--  
在listview中如何实现?
--  作者:Bin
--  发布时间:2015/4/17 15:52:00
--  
重新按照你的顺序生成一遍吧


--  作者:liuxianjie1980
--  发布时间:2015/4/17 16:07:00
--  
bin大师:你说的意思,我明白,就是模拟点击一下“显示”,重新生成listview,但是还是老样子,狐爸的代码是针对表的,可以实现,但是在listview重新生产后,还是新增条在最后,不应该啊??
--  作者:Bin
--  发布时间:2015/4/17 16:07:00
--  
你根据ROWS 的顺序.来生成
--  作者:liuxianjie1980
--  发布时间:2015/4/17 16:11:00
--  

表中的新增条已经位于(o)的位置了

 

listview中的“显示”代码跟帮助中的一样:

 

Dim lvw As WinForm.ListView = e.Form.Controls("ListView1")
Dim pg As Integer = e.Form.Controls("Label1").Text
Dim idx1 As Integer = (pg - 1)*10 \'获取要显示的第一行
Dim idx2 As Integer = (pg*10)-1 \'获取要显示的最末行
idx2 = Math.Min(DataTables("建议栏").dataRows.Count -1,idx2) \'idx2不能超过表的最大行数
lvw.Images.Clear() \'清除之前的图片
lvw.Rows.Clear() \'清除之前的行
For idx As Integer = idx1 To idx2
    Dim dr As DataRow = DataTables("建议栏").DataRows(idx) \'根据行位置从数据表中取得对应的DataRow
    Dim vr As WinForm.ListViewRow = lvw.Rows.Add() \'在ListView增加一行
    For Each cl As WinForm.ListViewColumn In lvw.Columns \'逐列取值
        vr(cl.Name) = dr(cl.Name)
        vr.Tag= dr
    Next
Next

 

 

新增条还是位于最后,所以这段代码是不是有问题

[此贴子已经被作者于2015/4/17 16:11:49编辑过]