以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  在筛选树中,如何将两个不同字段的数据显示在同一级?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=32789)

--  作者:xfilemark
--  发布时间:2013/5/8 11:46:00
--  在筛选树中,如何将两个不同字段的数据显示在同一级?

在筛选树中,如何将两个不同字段的数据显示在同一级?
筛选树的分级分别是:校区——班级——时段1+时段2


请问前辈如何实现?谢谢!

 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:viewtrv.zip

此主题相关图片如下:显示格式.jpg
按此在新窗口浏览图片

用户只对“上课时段1“和“上课时段2“进行选择


[此贴子已经被作者于2013-5-8 12:02:20编辑过]

--  作者:Bin
--  发布时间:2013/5/8 12:01:00
--  
.
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:viewtrv.zip


--  作者:don
--  发布时间:2013/5/8 12:09:00
--  
Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.CommandText = "Select 校区, 班级, 上课时段1 As 时段 From {班级信息} Union all  Select 校区, 班级, 上课时段2 As 时段 From {班级信息}"
dt = cmd.ExecuteReader()

Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree(dt,"校区|班级|时段")

--  作者:Bin
--  发布时间:2013/5/8 12:12:00
--  
以下是引用don在2013-5-8 12:09:00的发言:
Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.CommandText = "Select 校区, 班级, 上课时段1 As 时段 From {班级信息} Union all  Select 校区, 班级, 上课时段2 As 时段 From {班级信息}"
dt = cmd.ExecuteReader()

Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree(dt,"校区|班级|时段")

这个做法比我的效率高.建议采用他的.
我的采用代码方式,新手可能比较容易理解.

--  作者:xfilemark
--  发布时间:2013/5/8 15:12:00
--  
非常感谢二位前辈!!
已经采用你们的方法解决问题了!

[此贴子已经被作者于2013-5-8 15:23:16编辑过]

--  作者:xfilemark
--  发布时间:2013/5/8 15:51:00
--  
请问don,您的这段代码应该放在哪个控件的哪个事件中?
[此贴子已经被作者于2013-5-8 15:52:08编辑过]

--  作者:don
--  发布时间:2013/5/8 16:38:00
--  
你原来放那,它就在那
--  作者:xfilemark
--  发布时间:2013/5/8 17:11:00
--  
请问don,我如何判断用户点的是时段1还是时段2,如果用户点中其中一个时段,该值就自动输入控件,未被选中的时段则不写入控件?
[此贴子已经被作者于2013-5-8 17:14:37编辑过]

--  作者:don
--  发布时间:2013/5/8 17:39:00
--  
以下是引用xfilemark在2013-5-8 17:11:00的发言:
请问don,我如何判断用户点的是时段1还是时段2,如果用户点中其中一个时段,该值就自动输入控件,未被选中的时段则不写入控件?
[此贴子已经被作者于2013-5-8 17:14:37编辑过]

改为这样区分:
Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.CommandText = "Select 校区, 班级, \'[时段1]:\' + 上课时段1  As 时段 From {班级信息} Union all  Select 校区, 班级, \'[时段2]:\' + 上课时段2 As 时段 From {班级信息}"
dt = cmd.ExecuteReader()

Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree(dt,"校区|班级|时段")

[此贴子已经被作者于2013-5-8 17:39:19编辑过]

--  作者:xfilemark
--  发布时间:2013/5/8 19:19:00
--  
don, 为什么我点击了“A校区”的“A班级”的“周一 8:00“,而窗口的“校区”、“班级”和“上课时段1“控件中仍然是空的呢?
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:viewtrv.zip