• Domingo 22 de Diciembre de 2024, 13:12

Autor Tema:  Ayuda Con Estructura  (Leído 1526 veces)

junahu

  • Miembro activo
  • **
  • Mensajes: 97
    • Ver Perfil
Ayuda Con Estructura
« en: Viernes 21 de Abril de 2006, 00:33 »
0
Hola amigos, quisiera saber como una función creada en una clase retorne una estructura como valor a otro formulario.
Yo creo la estructura en la Clase y cuando ejecuto la función, en return mando la estructura. Aquí  veo que si manda la estructura y que está bien.
Cuando llega al formulario, que es el que manda realizar la función, me da el error "La conversión especificada no es válida".
En el formulario he creado otra estructura para que recoja el retorno de la función. Esta estructura tiene los mismos elementos que la de la Clase.

Gracias por leer y si podeis ayudarme os lo agradezco..
 :comp:

senzao18

  • Miembro HIPER activo
  • ****
  • Mensajes: 553
    • Ver Perfil
Re: Ayuda Con Estructura
« Respuesta #1 en: Sábado 22 de Abril de 2006, 03:21 »
0
Tienes que declarar una estrucutra del tipo Clase.Structure....

Por que para VB.Net la estructura

Form1.Structure y Class.Structure son diferentes.......Aunque tenga los mismos elementos...
---------------------------------------
Erick Aragon Zepeda
Dessarrollo de Aplicaciones .NET
http]
Blog de Articulos
Mi Blog
NoSolocodigo -->

junahu

  • Miembro activo
  • **
  • Mensajes: 97
    • Ver Perfil
Re: Ayuda Con Estructura
« Respuesta #2 en: Lunes 24 de Abril de 2006, 01:43 »
0
Gracias por contestar senzao18. ¿Pero podrías como hacerlo?
yo para declarar las estructuras lo hago así:

   Structure TipoTamano
        Dim Tipo As String
        Dim Tamano As String
    End Structure

tanto en las Clases como en el Formulario.
Pero estoy perdido en darles los tipos Clase.Structure y Form1.Structure

No encuentro en Internet datos para ello.

Gracias de nuevo y saludos.

senzao18

  • Miembro HIPER activo
  • ****
  • Mensajes: 553
    • Ver Perfil
Re: Ayuda Con Estructura
« Respuesta #3 en: Lunes 24 de Abril de 2006, 21:48 »
0
Bueno creo que me explique maL.....


Por ejemplon si esa estructura la tienes en un proyecto de clases...
para mandarla llamar seria algo asi...


Supongamos que la estructura esta en el archivo MyClass.vb que tiene la siguente forma:

Código: Text
  1.  
  2. Public Class MyClass
  3.  
  4.  
  5.   Friend Function AplicarTraslado(ByVal dsTraslado As DataSet) As StatusAplicarTraslado
  6.        
  7.         Return oSAT
  8.  
  9.     End Function
  10.  
  11. Public Class MyClass
  12.  
  13. Public Structure StatusAplicarTraslado
  14.     Private strFolioTraslado As String
  15.     Dim ME21N As Boolean
  16.     Dim ME22N As Boolean
  17.     Dim MB1B As Boolean
  18.     Dim Diferencias As Boolean
  19.     Dim Centro As String
  20.     Dim FolioMB1B As String
  21.  
  22.     Public Property FolioTraslado() As String
  23.         Get
  24.             Return strFolioTraslado
  25.         End Get
  26.         Set(ByVal Value As String)
  27.             strFolioTraslado = Value
  28.             If Value <> String.Empty Then
  29.                 ME21N = True
  30.             Else
  31.                 ME21N = False
  32.             End If
  33.         End Set
  34.     End Property
  35. End Structure
  36.  
  37.  
  38.  

Cuando yo quiere reciber esa estructura desde un form yo tengo que declararla y usarla mas o menos asi.

Dim oMyClass as new MyClass
Dim oSAT as MyClass.Structure StatusAplicarTraslado

oSat = oMyClass.AplicarTraslado

Y listo con eso ya no marca error.

Si quieres el ejemplo mas completo solo pidelo... Bueno aunque creo que con esto ya no tendras dudas...
---------------------------------------
Erick Aragon Zepeda
Dessarrollo de Aplicaciones .NET
http]
Blog de Articulos
Mi Blog
NoSolocodigo -->

junahu

  • Miembro activo
  • **
  • Mensajes: 97
    • Ver Perfil
Re: Ayuda Con Estructura
« Respuesta #4 en: Miércoles 26 de Abril de 2006, 01:09 »
0
Muchas gracias senzao18, he conseguido que funcione.
Resulta que no tengo que crear otra estructura en el formulario para conseguir los datos de la estructura de la clase, solo llamo desde el formulario a la función de la clase (le devuelve los valores de la estructura), y ya está, desde el formulario puedo acceder a los datos de la estructura de la clase.

En la clase (MiClase):
-creo la estructura:
       Structure TipoTamano
        Dim Tipo As String
        Dim Tamano As String
    End Structure

-creo un objeto de la estructura:
    Public MandoDatos As TipoTamano

-en cierta parte creo la función:
    Public Function TamanoDatos(…)
   …
      MandoDatos.Tamano = dato1
        MandoDatos.Tipo = dato2
        Return MandoDatos
    End Function

En el formulario hijo (FormularioHijo):
- En un Sub:
       FormularioPadre.MiClase.TamanoDatos(…)

   Dim DatoStructura1 as string= FormularioPadre.MiClase.MandoDatos.Tipo
   Dim DatoStructura2 as string= FormularioPadre.MiClase.MandoDatos.Tamano

¿Que te parece? Así funciona.

senzao18

  • Miembro HIPER activo
  • ****
  • Mensajes: 553
    • Ver Perfil
Re: Ayuda Con Estructura
« Respuesta #5 en: Miércoles 26 de Abril de 2006, 06:23 »
0
Bueno esa es otra solucion jjeje...
---------------------------------------
Erick Aragon Zepeda
Dessarrollo de Aplicaciones .NET
http]
Blog de Articulos
Mi Blog
NoSolocodigo -->