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

Manejo de formularios en VB.Net

Estas en el tema de Manejo de formularios en VB.Net en el foro de .NET en Foros del Web. Gente, estoy teniendo el siguiente problema. Estoy desarrollando una aplicación en donde tengo un form MDI (frmPrincipal) el cual tiene una serie de menús (Usuarios, ...
  #1 (permalink)  
Antiguo 24/10/2010, 06:56
 
Fecha de Ingreso: junio-2010
Mensajes: 17
Antigüedad: 13 años, 10 meses
Puntos: 0
Manejo de formularios en VB.Net

Gente, estoy teniendo el siguiente problema.
Estoy desarrollando una aplicación en donde tengo un form MDI (frmPrincipal) el cual tiene una serie de menús (Usuarios, Empleados, etc.) y, en algunos casos, con submenús, que al seleccionarse se abre un nuevo form (por ej. Empleados --> Modificar empleado - frmEmpleado). Este último está compuesto por algunos textbox, un listbox, un boton Modificar y otro Buscar. Al presionar Buscar se abre otro form (frmBuscaEmpl) que tiene un textbox para poner un nombre o apellido a buscar y un boton Aceptar. Acá está el problema, mi idea es que después de poner los datos a buscar, presionando Aceptar, se carguen los datos en el listbox de frmEmpleado (la busqueda puede traer mas de un resultado, por eso el listbox) y se cierre el form de búsqueda.
El tema es que hace todo menos mostrar los datos en el listbox. Probé ejecutándolo paso a paso y los datos de la BD me los trae pero por alguna razón no me los muestra.
Les paso el código de como está hecho, porque seguro le esoy errando a algo:

Código:
frmPrincipal (MDI):

Private Sub ModificarEmpleadoToolStripMenuItem_Click(ByVal sender As Object, ByVal e As EventArgs) Handles ModificarEmpleadoToolStripMenuItem.Click
        Dim fe As New frmEmpleado
        With fe
            .Text = "Modificar empleado"
            .btnAgregar.Enabled = False
            .btnModificar.Enabled = False
            .btnBorrar.Enabled = False
            .Show()
        End With
End Sub

frmEmpleado:

Private Sub btnBuscar_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnBuscar.Click
        Dim fbe As New frmBuscaEmpl
        fbe.Show()
End Sub

Public Sub cargarEmpleados(ByVal dt As DataTable)
        If dt.Rows.Count > 0 Then
            For Each em As DataRow In dt.Rows
                lstEmpleado.Items.Add(em.Item("legajo") & "   " & em.Item("nombre"))
            Next
        Else
            lstEmpleado.Items.Add("No se encontraron datos para la consulta realizada")
        End If
End Sub

frmBuscaEmpl:

Private Sub btnAceptar1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnAceptar1.Click
        empl.Apellido = txtApellido1.Text
        dt = BLL.BLL.Empleado_BLL.consultarEmpleados(empl)
        fe.cargarEmpleados(dt)
        Me.Close()
End Sub
Espero se entienda lo que acabo de explicar.
A quien me pueda dar una mano se lo voy a agradecer mucho.

Saludos,
Dilor.
  #2 (permalink)  
Antiguo 24/10/2010, 18:05
 
Fecha de Ingreso: octubre-2010
Ubicación: Cordoba, Argentina
Mensajes: 40
Antigüedad: 13 años, 5 meses
Puntos: 2
Respuesta: Manejo de formularios en VB.Net

la verdad... no entiendo como haces una linea
"fe.cargarEmpleados(dt)"
Donde definis "fe"??, por lo que entiendo es una funcion de frmEmpleado, pero la llamas desde frmBuscaEmpl. Lo que deberia estar haciendo es, pasarle a frmBuscaEmpl el form frmEmpleado. Si la variable fe la declaras como una nueva variable en frmBuscaEmpl, es ese el problema. Avisame
  #3 (permalink)  
Antiguo 25/10/2010, 08:01
 
Fecha de Ingreso: abril-2009
Mensajes: 121
Antigüedad: 15 años
Puntos: 4
Respuesta: Manejo de formularios en VB.Net

Hola:

No sé si te aparece el texto "No se encontraron datos para la consulta realizada" o si es que te aparecen todos los datos, no sólo los filtrados.
Creo, sin poder verlo, que no estas vaciando el ListBox "lstEmpleado". No sé si será esto. Realmente, no me aclaro con el código.
  #4 (permalink)  
Antiguo 25/10/2010, 08:36
Avatar de mvazquez  
Fecha de Ingreso: octubre-2004
Ubicación: Monterrey - México
Mensajes: 875
Antigüedad: 19 años, 5 meses
Puntos: 8
Respuesta: Manejo de formularios en VB.Net

Creo que tu problema es el instanciamiento, en el formulario hijo tienes que validar si este ya esta instanciado, porque si no estas validando lo que hace es que te vuelve a crear el formulario junto con los objetos, es por eso que no te muestra la información porque vuelve a cargar todo pero vacío, espero haberme dado a entender.

Saludos.

si tienes dudas de como hacer eso comenta.
__________________
http://vazquezvega.wordpress.com/
"La paciencia nos da el privilegio de compartir el refrescante fruto de Dios con los demás."
  #5 (permalink)  
Antiguo 26/10/2010, 13:02
 
Fecha de Ingreso: octubre-2010
Mensajes: 27
Antigüedad: 13 años, 5 meses
Puntos: 1
Respuesta: Manejo de formularios en VB.Net

estas utilizando alguna base de datos...???
realmente no entiendo cual es la pregunta.....
usas access o mysql...?
o simplemente los datos estan en un arreglo....?

Etiquetas: manejo, formulario
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 03:03.