以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  treeview控件中信息编号问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=160464)

--  作者:cqlwsam
--  发布时间:2021/2/3 15:48:00
--  treeview控件中信息编号问题
如截图,通过对treeview控件(两级节点)中的信息进行编辑处理得到截图中的信息。需要对信息进行编号。想实现:
1.根节点由前向后为01,02,03,04,....
2.第二层节点由前向后为01,02,03,04,....
3.合成编号:0101(图中的:信息管理\\基本信息),或0102(图中的:信息管理\\诊断信息)

谢谢!

图片点击可在新窗口打开查看此主题相关图片如下:360截图17690617503468.png
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2021/2/3 15:56:00
--  
编辑节点名称的时候直接填入不就行了,比如:信息管理(01)
--  作者:cqlwsam
--  发布时间:2021/2/3 18:27:00
--  
如果变化的内容(如先后顺序等)很多,逐个重新手工编号,就会很繁琐,也容易出错。也不能体现计算机的能力。
如果是两级,循环两次即可,如何获得所有一级节点的标题。


--  作者:cqlwsam
--  发布时间:2021/2/3 23:36:00
--  
部分代码:
Dim tr As WinForm.TreeView = e.Form.Controls("TreeView1")
Dim td As WinForm.TreeNode
Dim n,n1 As Integer
Dim t1,t2 As String
Dim dr As DataRow
n=0
For Each node As WinForm.TreeNode In tr.Nodes
    n=n+1
    t1 = node.Text
    n1=0
    For Each node1 As WinForm.TreeNode In node.Nodes
        n1=n1+1
        t2 = node1.Text
        dr = DataTables("主表").Find("[分组]=\'" & t1 & "\'" & "and [名称]=\'" & t2 & "\'")
        If dr IsNot Nothing Then
            dr("序号")=Format(n,"00")& Format(n1,"00")
        End If
    Next
Next

--  作者:有点蓝
--  发布时间:2021/2/4 8:55:00
--  
使用递归处理,比如:http://www.foxtable.com/webhelp/topics/2416.htm