以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  窗口中加载不能实现子表与父表同步  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=108852)

--  作者:aza520
--  发布时间:2017/10/30 21:46:00
--  窗口中加载不能实现子表与父表同步

我在表格形式下可以实现子表与父表同步,在窗口加载树下子表与父表不能同步加载,是何原因?请教老师


项目BeforeLoadInnerTable事件:

If e.DataTableName = "S征地记录" Then
    e.Filter = "[_Identify] Is Null"
End If

项目LoadUserSetting事件:“根据不同登录用户加载不同数据”
If User.Name = "开发者" Or User.Name = "管理员" Then
    DataTables("S征地记录").LoadFilter = ""
Else
    DataTables("S征地记录").LoadFilter = "乡 = \'" & User.Name & "\' or 县 = \'" & User.Name & "\' or 项目名称 = \'" & User.Name & "\'"
End If
DataTables("S征地记录").Load()

父表"S征地记录"AfterLoad事件:“同步加载子表数据”

e.DataTable.LoadChildren("S征地明细")

父表"S征地记录"主窗口AfterLoad事件:“
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree("S征地记录", "项目名称|县|乡")
trv.Nodes.Insert("显示所有行",0)

目录树NodeMouseDoubleClick事件:
Dim Filter As String
Dim dr As DataRow = e.Node.DataRow \'获取生成此节点的行
If e.Node.Text <> "显示所有行" Then
    Select Case e.Node.Level
        Case 0
            Filter = "[项目名称] = \'" & dr("项目名称") & "\'"
        Case 1
            Filter = "[项目名称] = \'" & dr("项目名称") & "\' And [县] = \'" & dr("县") & "\'"
        Case 2
            Filter = "[项目名称] = \'" & dr("项目名称") & "\' And [县] = \'" & dr("县") & "\' And [乡] = \'" & dr("乡") & "\'"
    End Select
End If
Tables("S征地记录").Filter = Filter

Tables("S征地记录").Position = Tables("S征地记录").FindRow(e.Node.DataRow)

--  作者:有点蓝
--  发布时间:2017/10/30 22:16:00
--  
请不要重复发帖:http://foxtable.com/bbs/dispbbs.asp?boardid=2&Id=108846