如何使用vb.net创建一个父子集合,其中输出将采用层次结构
我想在VB.NET中创建一个层次结构,如下所示如何使用vb.net创建一个父子集合,其中输出将采用层次结构,vb.net,oop,Vb.net,Oop,我想在VB.NET中创建一个层次结构,如下所示 <Parent> <Child1><Child1 /> <Child2> <Subchild1 /> <Subchild2 /> <Child2 /> </Parent> 是否需要将子类作为属性添加到父类?如何做到这一点,并创建如上所述的结构。请帮忙。谢谢。您可以这样吃: Public Class Node
<Parent>
<Child1><Child1 />
<Child2>
<Subchild1 />
<Subchild2 />
<Child2 />
</Parent>
是否需要将子类作为属性添加到父类?如何做到这一点,并创建如上所述的结构。请帮忙。谢谢。您可以这样吃:
Public Class Node
Public Property FirstName As String
Public Property LastName As String
Private _childNodes As New List(Of Node)
Public Property ChildNodes As List(Of Node)
Get
Return _childNodes
End Get
Set
_childNodes = value
End
End Property
End Class
用法
Dim parent As New Node
parent.FirstName = "John"
parent.LastName = "Doe"
Dim child_1 As New Node()
child_1.FirstName = "Jane"
child_1.LastName = "Doe"
parent.ChildNodes.Add(child_1)
Dim dept As New Department
dept.Name = "Accounting"
Dim subDept1 As New Department()
subDept1.Name = "Audit"
dept.SubDepartments.Add(subDept1)
Dim employee1 As New Employee()
employee1.FirstName = "John"
employee1.LastName = "Doe"
dept.Employees.Add(employee1)
更新
用法
Dim parent As New Node
parent.FirstName = "John"
parent.LastName = "Doe"
Dim child_1 As New Node()
child_1.FirstName = "Jane"
child_1.LastName = "Doe"
parent.ChildNodes.Add(child_1)
Dim dept As New Department
dept.Name = "Accounting"
Dim subDept1 As New Department()
subDept1.Name = "Audit"
dept.SubDepartments.Add(subDept1)
Dim employee1 As New Employee()
employee1.FirstName = "John"
employee1.LastName = "Doe"
dept.Employees.Add(employee1)
希望有帮助!这可以进一步重构,但这应该可以工作。谢谢您的回答。我能理解你所给予的。但是我的子类有不同的属性,比如(department是我的父类,employee是我的子类,一对多关系)。我是否需要像您所给出的那样将employee类属性添加到department类?因为我在你的答案中没有看到任何子类被实例化的地方?因为我有4个子集合类,其中包含许多属性,这些属性将在实时场景中的父类下列出。此外,我还提供了addrow方法,用于循环递归记录的节点。请澄清