Foros del Web » Programación para mayores de 30 ;) » .NET »

problemas con windows forms

Estas en el tema de problemas con windows forms en el foro de .NET en Foros del Web. Hola! Tengo un formulario principal con un textbox y un formulario secundario con otro textbox y un boton, formulario al que accedo desde un boton ...
  #1 (permalink)  
Antiguo 29/02/2004, 13:39
 
Fecha de Ingreso: enero-2004
Ubicación: cordoba
Mensajes: 9
Antigüedad: 20 años, 3 meses
Puntos: 0
problemas con windows forms

Hola!
Tengo un formulario principal con un textbox y un formulario secundario con otro textbox y un boton, formulario al que accedo desde un boton del formulario principal.
no logro pasar el contenido del textbox del formulario secundario al textbox del formulario principal cuando presiono el boton del formulario secundario. es como si el principal no puede ser modificado por un formulario engendrado por el mismo o algo asi.
el codigo que uso en el boton del formulario secundario es el siguiente:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

dim f1 as new Form1
f1.textbox1.text = textbox2.text 'ese ultimo textbox es del formuario secundario

End Sub

alguien que me ayude por favor!

gracias
  #2 (permalink)  
Antiguo 01/03/2004, 11:28
Avatar de sindestino  
Fecha de Ingreso: noviembre-2003
Ubicación: xxxx xxxx
Mensajes: 270
Antigüedad: 20 años, 6 meses
Puntos: 0
el problema es que al hacer dim f1 as new Form1 estás creando una NUEVA INSTANCIA del formulario (que no es la que está en pantalla), y el textbox al que le asignás la cadena no es el del formulario que estás viendo sino el de esa instancia nueva.
Los formularios en .NET funcionan de manera diferente a como lo hacían en VB6, para modificar algo un formulario (o sus controles) necesitás tener acceso a dicha instancia.
Por ejemplo podés declarar una variable pública en el formulario secundario de tipo Form (Public frmPadre as Form), luego, en el procedimiento del formulario principal que abre el formulario secundario le pasás la instancia actual así:

desde Form1:

dim f2 as new Form2
f2.frmPadre = me
f2.show()

y en el procedimiento que posteaste, en vez de hacer dim f1 as NEW..., hacé frmPadre.textbox1.text = ..... bla bla bla

no se si fui muy claro, cualquier cosa decime y trataré de explicarme mejor

Saludos!
  #3 (permalink)  
Antiguo 01/03/2004, 21:00
 
Fecha de Ingreso: enero-2004
Ubicación: cordoba
Mensajes: 9
Antigüedad: 20 años, 3 meses
Puntos: 0
Funciono de lujo!
solo un detallito. a la variable publica declarada en el segundo formulario la tube que declara As new form1 ya que como Form no me permitia acceder a los controles del formulario1.
La verdad que me esta resultando complicado migrarme de vb6 a .net.
muchas gracias por la ayuda!

saludos
  #4 (permalink)  
Antiguo 03/03/2004, 02:27
Avatar de SunDarK  
Fecha de Ingreso: diciembre-2003
Ubicación: Jerez de la Frontera
Mensajes: 1.193
Antigüedad: 20 años, 5 meses
Puntos: 8
Wenash! mi primer post es para felicitarte sindestino porque yo tambien tenia la misma duda que maximiliano y gracias a tu explicación lo he entendido y me ha salido genial,muchas gracias,un saludo!
  #5 (permalink)  
Antiguo 03/03/2004, 07:40
Avatar de sindestino  
Fecha de Ingreso: noviembre-2003
Ubicación: xxxx xxxx
Mensajes: 270
Antigüedad: 20 años, 6 meses
Puntos: 0
jeje, de nada y bienvenido a los foros.
Les recomiendo a ambos éste link que habla sobre las diferencias entre .net y vb6 cuando se trabaja con formularios

http://www.microsoft.com/spanish/msd...tipleForms.asp

espero que les sea de provecho
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:37.