Assembly

30/05/2006 - 13:18 por Pablo | Informe spam
Hola a todos,
estoy utilizando vb2003 y trabajando un projecto a puras DLL (assembly) , mi
pregunta es, dado que cada FORM es una DLL, como puedo hacer para pasar
datos entre ellas?

gracias.
 

Leer las respuestas

#1 Pablo
30/05/2006 - 14:45 | Informe spam
Muchas Gracias por tu completa explicacion, voy a ponerlo en practica!!!

Gracias!!!!!!!!!!!

"Alberto Poblacion"
escribió en el mensaje news:ukp6CP%
"Pablo" wrote in message
news:%
estoy utilizando vb2003 y trabajando un projecto a puras DLL (assembly) ,
mi pregunta es, dado que cada FORM es una DLL, como puedo hacer para
pasar datos entre ellas?



Para pasar datos entre forms da exactamente lo mismo que estén en DLLs
separadas o que estén en la misma DLL o en un EXE. En cualquiera de los
casos es necesario que el movimiento de datos se haga desde algún sitio
que tenga referencia a ambos forms. Puede ser el programa que los crea, o
puede ser uno de los forms que reciba una referencia al otro form (aquí
usamos "referencia" en su sentido más amplio, por ejemplo, si pasáramos a
un form un delegado que apuntase a un método público del otro form, eso
sería una "referencia" al otro form).

Un ejemplo: Supongamos que el movimiento de datos lo realice el programa
principal que crea las instancias de ambos forms:

Dim frm1 as new Form1()
frm1.Show()
Dim frm2 as new Form2()
frm2.Show()
frm2.Propiedad2=frm1.Propiedad1

Lógicamente, propiedad 1 y propiedad2 tienen que ser "Public" en sus
respectivos forms.

Otro ejemplo: Supongamos que el programa que abre los forms le pasa al
segundo form una referencia al form1:

En el programa principal:

Dim frm1 as new Form1()
frm1.Show()
Dim frm2 as new Form2(frm1)
frm2.Show()

Dentro de frm2:

Dim elOtroForm as Form1
Public Sub New(f as Form1)
elOtroForm = f
end Sub
Sub MoverDatos()
elOtroForm.Propiedad1 = Me.ElDatoAMover
End Sub



Preguntas similares