请教老师:下列代码生成的动态目录树如何按“自定义列”排序:(比如说按“编码”列排序)
将窗口的AfterLoad事件设为:
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree("职工基础信息", "岗位类别|工作部门")
trv.Nodes.Insert("全部",0)
将目录树的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("职工基础信息").Filter = Filter
问题:"职工基础信息"表还有[类别编码]和[部门编码]两列,如果按这两列排序,则:岗位类别排序应该是:“管理人员>>>外派人员>>>其它人员......”;部门排序顺序应该是:“领导&高管>>>董事会秘书处>>>行政管理部......”。但是按上述示例代码生成的动态目录树的排序顺序分别变为了:“管理人员>>>其它人员>>>外派人员......”和“安监部>>>财务部>>>党群部>>>领导_高管......”。
请教:1、想要生成的动态目录树分别按[类别编码]和[部门编码]这两列排序,上述代码应如何修改?(这个问题“有点甜”版主在http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=120230&replyID=&skin=1这里已赐教过,但代码格式不一样,不会参照,请见谅)
2、上述代码能不能用另一个表(即:“部门岗位设置”表)的相同列来动态生成目录树,并在使用上达到一样效果?
3、如果想用同文件夹下的“外部数据源-Rslz.mdb”的"职工基础信息"表,上述代码应如何修改?
谢谢!
(版主、老师、高手们莫见笑,六二年生人学编程、关键还不懂英文,常常是“有想法、没办法”,只能靠版主、老师、高手们的实例和代码来解决问题和实现构想了。再次谢谢。)
[此贴子已经被作者于2018/6/19 18:00:16编辑过]