Doh!
Sorry I was incorrect with my expectation.
I should have said this.
Part.Part(0).Part(0).Part(0)
Or
Dim Part as new PartEntity(1)
For Each P as PartEntity in Part.Part
MsgBox(P.Part_ID)
If P.Part.Count > 0 then
MsgBox(P.Part(0).Parent_ID)
End If
Next
Just to show you the difference, here is what I am getting.
Dim Part as New PartEntity(1)
For Each P as PartEntity in Part.PartParent_ID ' Why is this collection named like this and not named Part?
MsgBox(P.Part_ID)
If P.PartParent_ID.Count > 0 then
MsgBox(P.PartParent_ID(0).Parent_ID)
End If
Next
As you can see, it works, but looks funny.
Oh, and is this documented anywhere? I can't seem to find anything on self referencing tables.
Thanks