Ver Mensaje Individual
  #3 (permalink)  
Antiguo 15/12/2010, 08:37
Avatar de devilinside
devilinside
 
Fecha de Ingreso: marzo-2008
Ubicación: En Perú
Mensajes: 73
Antigüedad: 16 años, 1 mes
Puntos: 6
Respuesta: Llamar a formulario desde textbox en VB 2008

Cita:
Iniciado por Hypnoss Ver Mensaje
Estoy desarrollando una aplicación en Visual Basic 2008 y en un formulario tengo una fila de Labels y textbox que registran datos, en uno de esos textbox se elmacena el nombre del formulario mediante el cual se llenaron esos datos.

Hay alguna manera de instanciar a un objeto form el nombre que se almaceno en el textbox y de esta manera mandar llamar a ese formulario??

es decir en el textbox tengo almacenafo frmFormulario1


entonces que en codigo pueda hacer

dim frmNuevoForm as Form
frmNuevoForm = New textbox.text (frmFormulario1)

y de esta manera poder abrir el formulario, quiero ver si se puede para evitar usar un Select Case y ahorrarme unas lineas.

Se me ocurrió esto:

Código Vb.Net:
Ver original
  1. 'Para Instanciar un formulario harías esto, simulando un constructor
  2.         Dim miFormulario As Form1 = instanciaForm("Form1")
  3.         miFormulario.Show()
  4.         ...


y esta sería la función que simularía el contructor, haciendo el trabajo de selección y devolviendo memoria para el formulario correspondiente.

Código Vb.Net:
Ver original
  1. Function instanciaForm(ByVal strNombreFOrm As String) As Form
  2.         Dim f As Form
  3.         Select Case strNombreFOrm
  4.             Case "Form1"
  5.                 f = New Form1
  6.                 Return f
  7.             Case "Form2"
  8.                 f = New Form2
  9.                 Return f
  10.             Case "Form3"
  11.                 f = New Form3
  12.                 Return f
  13.             Case Else
  14.                 Return Nothing
  15.         End Select
  16.     End Function

Tal vez se pueda hacer algo más propio y sofisticado implementando alguna clase que herede de la clase FORM, pero no se me da ahora la idea y creo que esto te puede sacar del apuro.

Saludos