以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]目录树“TreeView1”的“NodeMouseDoubleClick”事件代码运行错误  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=132869)

--  作者:hanzhang98
--  发布时间:2019/4/1 8:15:00
--  [求助]目录树“TreeView1”的“NodeMouseDoubleClick”事件代码运行错误
各位老师早上好。又有新问题请教。就是窗口中的目录树控件的“NodeMouseDoubleClick”事件代码,在表中数据无变化时运行均正常。但是只要表中的数据发生变化(增行、删行)后,点击任意节点时均出现“运行错误”(见下图),且不再能在表中筛选导航数据。不知原因,请老师们帮助。谢谢!
系统出错提示:
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20190401080101.png
图片点击可在新窗口打开查看

好像是目录树不随时刷新。其窗口的目录树“TreeView1”控件的“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("工作部门") & "\'"
    End Select
End If
Tables("窗口1_Table1").Filter = Filter


请老师们帮助。谢谢。

--  作者:有点甜
--  发布时间:2019/4/1 8:37:00
--  

1、如果你要用 e.node.datarow,那你如果刷新表,你的目录树也要重新build一下,才行。

 

2、不然,你用 e.node.fullpath,则不需要刷新目录树,如 http://www.foxtable.com/webhelp/scr/2690.htm

 


--  作者:hanzhang98
--  发布时间:2019/4/1 10:15:00
--  
谢谢老师指导。