¿Cómo pasar parámetros entre clases de vb.net?
Delegado público Sub ThreadCallback(valor como ThreadResult)
Clase pública Form1
Privado WithEvents _th_1 como Thread_1
Anulaciones protegidas Sub OnLoad( e Como System.EventArgs)
Valor tenue Como ThreadObject
valor.
End Sub
End Class
Clase pública Thread_1
Evento público ThreadEnd(remitente como objeto, e como ThreadEventArgs)
_control privado como control
Sub nuevo (control como control) p>
Me._control = control
End Sub
Public Sub Run(value As Object)
Dim th As New Threading.Thread(AddressOf ThreadProc)
th.Start(value)
End Sub
Private Sub ThreadProc(obj como objeto)
Valor atenuado como ThreadObject = CType(obj, ThreadObject)
Resultado atenuado como ThreadResult = Nada
Si value.Index = 1 Entonces result.Text = "Prueba"
Devolución de llamada atenuada Como nuevo ThreadCallback(AddressOf ThreadInvoke)
_ control.Invoke(callback, resultado)
End Sub
Private Sub ThreadInvoke(valor como ThreadResult)
RaiseEvent ThreadEnd(Me, New ThreadEventArgs(value))
End Sub
End Class
Estructura pública ThreadObject
Índice público como entero
'Rect público como rectángulo
EndStructure
Estructura pública ThreadResult
Texto público como cadena
'Public Rect As Rectángulo
Estructura final
Clase pública ThreadEventArgs
Hereda System.EventArgs
Privado _resultado como ThreadResult
p>Resultado de propiedad pública de solo lectura como ThreadResult
G
et
Devolver _resultado
Fin Obtener
Propiedad final
Sub nuevo (valor como ThreadResult)
Yo ._result = valor
Finalizar sub
Finalizar clase