Ok, I think the best way would be to remember that forms are just classes, nothing special about them. If you're running a method on a class, and you want that class to be able to interact with the calling class, it must have a reference to the instance you called it from.
Personally I think the best way is to do it in the constructor of the secondary form:
Public Sub New(frmCreatedBy As Form)
m_ParentForm = frmCreatedBy
...
End Sub
Modify your constructor by putting in that parameter, and declare a class-wide private member variable called m_ParentForm (as Form, of course).
Now, when you declare a new instance of your secondard form to show, from your primary, you'll have to do this:
Dim X As frmSecondary
X = New frmSecondary(Me)
X.ShowDialog()
And there you have it, since you passed the instance of the form you created it from (using the Me keyword) you now have a reference to the primary form in the secondary form.
Note that the type is just Form. If you want to access methods and properties specific to your form and not just every class which inherits Form, you'll have to change it to the name of yours.
Hope this helps.