If you want, try this approach. It's a little more digestible for what you want.
VB Code:
  1. Public Class Node
  2.         Public Data As String
  3.         Public NextP As Node
  4.     End Class
  5.     Private myNodes As Generic.List(Of Node)
  6.     Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
  7.         myNodes = New Generic.List(Of Node)
  8.     End Sub
  9.     Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  10.         Dim newNode As New Node
  11.         If myNodes.Count > 0 Then
  12.             myNodes(myNodes.Count - 1).NextP = newNode
  13.         End If
  14.         newNode.Data = GetData()
  15.         myNodes.Add(newNode)
  16.     End Sub

To test, use the following:
VB Code:
  1. Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
  2.         Dim display As New System.Text.StringBuilder
  3.         For Each hold As Node In myNodes
  4.             If hold.NextP IsNot Nothing Then  'LastOn won't have a reference to append.
  5.                 display.AppendLine(hold.Data & " ref: " & hold.NextP.Data)
  6.             Else
  7.                 display.AppendLine(hold.Data & " ref: N/A")
  8.             End If
  9.         Next
  10.         MessageBox.Show(display.ToString)
  11.     End Sub

The difference is the code above will help you keep track of your order by using a collection. When a new item is added, the previous item's "NextP" is assigned to it.