Hey Troy,
I am glad that you are getting this going. I am sure that you have learned that there are some frustrations making the two talk, but at least there is a solution!
As for your question, it just looks to me like you are attempting to reference the _UDP variable before it has been referenced.
Generally you should never directly reference a variable in another class like this. Instead of making the _UDP property public, you should leave this private and then create a public property that exposes this variable. You can also make it shared so you do not have to have a direct reference to the main form. This will also require that the variable is shared and will require all of your current referneces as well to reference the shared property rather than the internal variable.
Private Shared _UDP As UDPSession
Public Shared ReadOnly Property UDP As UDPSession
Get
'-- Make sure the UDP object has been created
If _UDP Is Nothing
_UDP = New UDPSession(...)
End If
End Get
End Property
If you choose not to make the property shared and are going to just pass over a reference to any form that references the UDP property then the property would look something like this:
Private _UDP As UDPSession
Public ReadOnly Property UDP As UDPSession
Get
'-- Make sure the UDP object has been created
If _UDP Is Nothing
_UDP = New UDPSession(...)
End If
End Get
End Property