以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  代码求助  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=13824)

--  作者:bm
--  发布时间:2011/10/28 14:14:00
--  代码求助
例如”表a“(父表)和“表b”为关联表。怎样才能做到当点击“表a.表b”子表的时候,表b的光标位置和“表a.表b”子表相同
--  作者:狐哥
--  发布时间:2011/10/28 14:19:00
--  

FindRow(DataRow)

DataRow: 指定一个数据行

返回指定的数据行在Table中的位置,如果没找到(例如Table处于筛选状态,而此数据行恰好不符合筛选条件),则返回-1。

例如在订单表中,我们希望将光标定位到最后一次订购PD01产品的订单:

Dim dr As DataRow
dr =
DataTables("订单").Find("[产品] = \'PD01\'", "日期 Desc")
If
dr IsNot Nothing Then
    Dim
wz As Integer = Tables("订单").FindRow(dr)
    If
wz >= 0 Then
        Tables
("订单").Position = wz

    End If
End If

上面的代码,首先利用DataTable的Find方法找出符合条件的DataRow,然后利用Table的FindRow方法找出这一DataRow在Table中的位置。
说得通俗点,就是先在仓库(DataTable)中查找,看看仓库是否有符合条件的DataRow,如果有,就到展厅(Table)中找出这个DataRow的位置。


--  作者:bm
--  发布时间:2011/10/28 14:55:00
--  谢谢老师
谢谢老师