Foxtable(狐表)用户栏目专家坐堂 → [求助]自行设计下拉目录树的问题?


  共有3949人关注过本帖树形打印复制链接

主题:[求助]自行设计下拉目录树的问题?

帅哥哟,离线,有人找我吗?
jk3622233
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:27 积分:320 威望:0 精华:0 注册:2012/5/14 12:49:00
[求助]自行设计下拉目录树的问题?  发帖心情 Post By:2013/9/1 10:50:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:列表项目_201309011042.zip

[帮助]里下拉目录树只有二级目录树,现在要做三级或四级的目录树,怎么办?如例题 

窗口1的AfterLoad事件设置为:

Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree("清单模板","省|项目拚音|收费项目")

在  TreeView(目录树)的NodeMouseClick事件代码如何设置?请教我啊:

If e.Node.Level = 1 Then '如果单击的是第二层节点

    Dim ps() As String = e.Node.FullPath.Split("\")

    Dim tr As Row = Tables("处方").Current

    Dim dr As DataRow = DataTables("清单模板").Find("省 = '" & ps(0) & "' And 收费项目 = '" & ps(1) & "'")

    If dr IsNot Nothing Then '如果在行政区域表找到对应的行,则将此行的值写入客户表的当前行.

        tr("省") = dr("省")

        tr("收费项目") = dr("收费项目")

        tr("项目ID") = dr("项目ID")

        tr("项目类别") = dr("项目类别")

        e.Form.DropDownBox.Value = tr("收费项目") '这行不是多余的,省略此行,无法在表中正常使用此下拉窗口输入数据.

    End If

    e.Form.DropDownBox.CloseDropdown()  '关闭下拉目录树

End If


 


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2013/9/1 22:55:00 [只看该作者]

 没有数据源,暂时无法帮你测试。

 你要说明一下,你哪里出错了,要怎么帮你改。

 回到顶部
帅哥哟,离线,有人找我吗?
jk3622233
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:27 积分:320 威望:0 精华:0 注册:2012/5/14 12:49:00
  发帖心情 Post By:2013/9/2 16:40:00 [只看该作者]

帮助]里下拉目录树只有二级目录树,现在要做三级或四级的目录树,怎么办?如例题 
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:列表项目_201309011042.zip


 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/9/2 16:48:00 [只看该作者]

没有数据源帮不了你.
4级目录树的话首先你 

If e.Node.Level = 3 Then 

这里要改为点击节点为第四层的时候生效.

 回到顶部
帅哥哟,离线,有人找我吗?
jk3622233
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:27 积分:320 威望:0 精华:0 注册:2012/5/14 12:49:00
  发帖心情 Post By:2013/9/2 17:33:00 [只看该作者]

If e.Node.Level = 2 Then '如果单击的是第三层节点

    Dim ps() As String = e.Node.FullPath.Split("\")

    Dim tr As Row = Tables("处方").Current

    Dim dr As DataRow = DataTables("清单模板").Find("项目拚音 = '" & ps(0) & "' And收费项目  = '" & ps(1) & "'")

    If dr IsNot Nothing Then '如果在行政区域表找到对应的行,则将此行的值写入客户表的当前行.

        tr("省") = dr("省")

         tr("项目拚音") = dr("项目拚音")

        tr("收费项目") = dr("收费项目")

        tr("项目ID") = dr("项目ID")

        tr("项目类别") = dr("项目类别")

        e.Form.DropDownBox.Value = tr("收费项目") '这行不是多余的,省略此行,无法在表中正常使用此下拉窗口输入数据.

    End If

    e.Form.DropDownBox.CloseDropdown()  '关闭下拉目录树

End If


 回到顶部
帅哥哟,离线,有人找我吗?
jk3622233
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:27 积分:320 威望:0 精华:0 注册:2012/5/14 12:49:00
  发帖心情 Post By:2013/9/2 23:49:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:列表项目_201309022346.zip

窗口1的AfterLoad事件设置为:

Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree("清单模板","省|项目拚音|收费项目")

If e.Node.Level = 2 Then '如果单击的是第三层节点

    Dim ps() As String = e.Node.FullPath.Split("\")

    Dim tr As Row = Tables("处方").Current

    Dim dr As DataRow = DataTables("清单模板").Find("项目拚音 = '" & ps(0) & "' And收费项目  = '" & ps(1) & "'")

    If dr IsNot Nothing Then '如果在行政区域表找到对应的行,则将此行的值写入客户表的当前行.

        tr("省") = dr("省")

         tr("项目拚音") = dr("项目拚音")

        tr("收费项目") = dr("收费项目")

        tr("项目ID") = dr("项目ID")

        tr("项目类别") = dr("项目类别")

        e.Form.DropDownBox.Value = tr("收费项目") '这行不是多余的,省略此行,无法在表中正常使用此下拉窗口输入数据.

    End If

    e.Form.DropDownBox.CloseDropdown()  '关闭下拉目录树

End If


 回到顶部