以文本方式查看主题 - 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=66243) |
-- 作者:lzzhx -- 发布时间:2015/4/1 20:46:00 -- 定位树节点问题 请教老师: 如截图所示,现能在点击树节点后,表自动定位到相应记录。有没有办法在表中选择不同记录后,也将树节点定位到相应节点上?
|
-- 作者:lzzhx -- 发布时间:2015/4/1 20:48:00 -- 图没有传上去 |
-- 作者:有点甜 -- 发布时间:2015/4/1 20:51:00 -- 循环所有的节点。比如
For Each nd As Object In trv.AllNodes |
-- 作者:lzzhx -- 发布时间:2015/4/1 20:55:00 -- 老师: 循环节点会不会引发节点的AfterSelectNode事件,因为我在节点的AfterSelectNode事件中有如下代码:
\'部门管理_TreeView1_AfterSelectNode \'选择节点后执行 If e.Node.FullName <> "所有部门" Then Dim a As String = e.Form.Controls("借用标签").text & Replace(e.Node.FullName,"\\",".") Dim dr As DataRow dr = DataTables("部门表").Find("[部门编号] = \'" & a & "\'") If dr IsNot Nothing Then Dim wz As Integer = Tables("部门表").FindRow(dr) If wz >= 0 Then Tables("部门表").Position = wz End If End If Else Tables("部门表").Position = 0 End If |
-- 作者:lzzhx -- 发布时间:2015/4/1 20:57:00 -- 图片传不上去,再试一下 |
-- 作者:有点甜 -- 发布时间:2015/4/1 20:57:00 -- 循环节点不会触发事件,设置 selectedNode 才会触发,触发可以避免,参考
http://www.foxtable.com/help/topics/2218.htm
|
-- 作者:lzzhx -- 发布时间:2015/4/1 21:02:00 -- 老师: 麻烦看一下我的 AfterSelectNode事件代码有没有什么问题。目的是选定节点后定位到表中相应记录上。
|
-- 作者:有点甜 -- 发布时间:2015/4/1 21:05:00 -- If e.Node.FullName <> "所有部门" Then Dim wz As Integer = Tables("部门表").FindRow(e.Node.DataRow) If wz >= 0 Then Tables("部门表").Position = wz Else Tables("部门表").Position = 0 End If End If |
-- 作者:lzzhx -- 发布时间:2015/4/1 21:11:00 -- 老师: 在树新了节点后,在窗体没有重新打开时,引用新增节点的 e.Node.DataRow 会出错
|
-- 作者:有点甜 -- 发布时间:2015/4/1 21:12:00 -- If e.Node.FullName <> "所有部门" Then Dim a As String = e.Form.Controls("借用标签").text & Replace(e.Node.FullName,"\\",".") Dim dr As DataRow dr = DataTables("部门表").Find("[部门编号] = \'" & a & "\'") If dr IsNot Nothing Then Dim wz As Integer = Tables("部门表").FindRow(dr) If wz >= 0 Then Tables("部门表").Position = wz End If Else Tables("部门表").Position = 0 End If Else Tables("部门表").Position = 0 End If |