📄 mdltreeview.vb
字号:
Module mdlTreeView
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'对treeview操作的所有函数
'将所有客户类型加入树型图
Public Function TypesToTreeView(ByRef tvw As TreeView, _
Optional ByVal bAddRoot As Boolean = True) As String
Dim ErrMsg As String = ""
tvw.Nodes.Clear()
Dim root As New TreeNode("所有客户")
root.Tag = 0
ErrMsg = LoadSubNodes(root)
Dim i As Integer = 0
Dim node As TreeNode
If bAddRoot Then
tvw.Nodes.Add(root)
Else
For Each node In root.Nodes
tvw.Nodes.Add(node)
Next
End If
tvw.ExpandAll()
Return ErrMsg
End Function
'调用递归,显示树型的客户类型结构
Private Function LoadSubNodes(ByRef node As TreeNode) As String
Dim typeObj As New clientMgrBusiness.ClientType
Dim dmType As clientMgrBusiness.ClientTypeDataModel
Dim i As Integer
Dim ErrMsg As String
Dim Ary As New ArrayList
'找到本级下的所有客户类型
ErrMsg = typeObj.GetAllDirectSubTypes(Ary, node.Tag)
Dim subNode As TreeNode
For i = 0 To Ary.Count - 1
dmType = Ary(i)
'构造结点数据
subNode = New TreeNode(dmType.TypeName)
subNode.Tag = dmType.ID
node.Nodes.Add(subNode)
'递归加载下级客户类型.....
LoadSubNodes(subNode)
Next i
Return ErrMsg
End Function
'将一个客户类型加入到树型图中
Public Function AddTypeToTreeView(ByVal dmType As clientMgrBusiness.ClientTypeDataModel, _
ByRef tv As TreeView) As String
Dim ErrMsg As String = ""
ErrMsg = CheckSelectedNode(tv)
If ErrMsg <> "" Then
Return ErrMsg
End If
Dim node As New TreeNode(dmType.TypeName)
node.Tag = dmType.ID
tv.SelectedNode.Nodes.Add(node)
Return ErrMsg
End Function
'从树型图中得到客户类型对象
Public Function GetSelectedType(ByRef dmType As clientMgrBusiness.ClientTypeDataModel, _
ByVal tv As TreeView) As String
Dim ErrMsg As String = ""
ErrMsg = CheckSelectedNode(tv)
If ErrMsg <> "" Then
Return ErrMsg
End If
Dim typeObj As New clientMgrBusiness.ClientType
ErrMsg = typeObj.GetTypeInfo(dmType, tv.SelectedNode.Tag)
Return ErrMsg
End Function
'将所有客户类型加入树型图
Public Function SexTypeToTreeview(ByRef tvw As TreeView, _
ByVal SelectedSexType As clientMgrBusiness.dmSex) As String
Dim ErrMsg As String = ""
tvw.Nodes.Clear()
Dim male As New TreeNode("男")
male.Tag = clientMgrBusiness.dmSex.Male
Dim female As New TreeNode("女")
female.Tag = clientMgrBusiness.dmSex.Female
tvw.Nodes.Add(male)
tvw.Nodes.Add(female)
If SelectedSexType = clientMgrBusiness.dmSex.Male Then
tvw.SelectedNode = male
Else
tvw.SelectedNode = female
End If
tvw.ExpandAll()
Return ErrMsg
End Function
Private Function CheckSelectedNode(ByVal tv As TreeView) As String
If tv Is Nothing Then
Return "TreeView未实例化"
End If
If tv.SelectedNode Is Nothing Then
Return "没有选种结点"
End If
Return ""
End Function
'
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
End Module
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -