以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- bug,BuildTree,排序以后,生成不正确 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=49639) |
||||
-- 作者:有点甜 -- 发布时间:2014/4/21 23:12:00 -- bug,BuildTree,排序以后,生成不正确 排序以后,生成的树,就不是想要的结果了。
这个是bug吗?
|
||||
-- 作者:有点甜 -- 发布时间:2014/4/21 23:56:00 -- up一下。 |
||||
-- 作者:花开的声音 -- 发布时间:2014/4/22 6:56:00 -- 顶一下,希望尽快测试解决。 |
||||
-- 作者:lsy -- 发布时间:2014/4/22 7:40:00 -- 呵呵,小事一桩,何劳狐爸大驾:
tv.BuildTree(dt,s.Replace("年龄|","").Replace("|年龄",""),"","序号,性别")
更可靠放心点:
If s.Contains("性别") Then [此贴子已经被作者于2014-4-22 7:44:31编辑过]
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2014/4/22 8:10:00 -- 呵呵,非bug,多层目录树,需要给每一层指定排序列,所以代码应该这样: e.Form.Controls("TreeView1").buildTree(DataTables("表A"), "第一列|第二列|第三列", "", "第一列,第二列,第五列")
也就是同公司,同性别的,再按年龄排序。
[此贴子已经被作者于2014-4-22 8:20:54编辑过]
|
||||
-- 作者:花开的声音 -- 发布时间:2014/4/22 8:17:00 -- 上班后,按各位老师修改意见,好好试下。。。 |
||||
-- 作者:有点甜 -- 发布时间:2014/4/22 9:10:00 --
原来是酱紫
[此贴子已经被作者于2014-4-22 9:11:05编辑过]
|
||||
-- 作者:花开的声音 -- 发布时间:2014/4/22 13:17:00 -- 反复试了下,终于明白些:排序的字段、字段排列的顺序,要根据所选择筛选的目录树列表项目名、项目名对应的节点在目录树的层级来确定,不能有差错,否则就会出现显示不对的情形。具体来说就是要对“主管司法局”、“法律服务所”、“性别”、“年龄”、“姓名”五个列表项目进行不同的排位组合,然后再根据这个排位组合来确定要排序的字段,比如其中一种: tv.BuildTree(dt,“主管司法局|法律服务所|性别|年龄|姓名”,"","序号,法律服务所,性别")这种写法显示就正确,但如写成 tv.BuildTree(dt,“主管司法局|法律服务所|性别|年龄|姓名”,"","序号,性别")则会显示错误。这有一个问题,要穷尽这几个列表项目在目录树中的节点位置顺序,来确定后面用来排序的字段名称和顺序,这个是不是有点麻烦呵,有没有简便点的写法? |
||||
-- 作者:lsy -- 发布时间:2014/4/22 14:10:00 -- 你的目录树列,和排序列都有点特殊: 一、因为年龄列复杂,为了简便,先把年龄列排除。 二、主管司法局列要按序号排序。 一般情况要比这个特例简单多了。 下面的代码是这个例子通用的。
If s.Contains("主管司法局") Then Else End If |
||||
-- 作者:花开的声音 -- 发布时间:2014/4/22 14:24:00 -- 哦。好的。也想麻烦你把年龄也考虑进去下,虽然复杂,但却是比较有用的,谢谢! |