Equivalencia Vb 6.0 a .Net

08/08/2006 - 16:11 por Ivan Pequeño | Informe spam
Estimados colegas...
Cual sería la equivalencia en Vb.Net
del Código siguiente ?

Obviamente agradeciendo de antemano

Esto debería estar en un módulo de manera que
sea accesible a todos los form, clases, etc

'Esto es el equivalente del Type de Vb 6.0
Structure StVarDat
Dim Nvl As Byte
Dim Nom As String
Dim Tip As String
End Structure
'Pero aqui empiezan los problemas
Public VarDat() As StVarDat
Public VarMax As Short

y en alguna clase necesitaré hacer como en Vb 6.0

'Y aqui ya no son problemas sino catástrofes
VarMax = TotalDeVariablesCobol
ReDim Preserve VarDat(TotalDeVariablesCobol) As StVarDat
For i = 1 to TotalDeVariablesCobol
VarDat(i).Nvl = 10
VarDat().Nom = "WS-RUT-NUM"
VarDat().Tip = "X"
Next

Reitero mis agradecimientos por una eventual orientación
 

Leer las respuestas

#1 Guillermo guille
08/08/2006 - 17:11 | Informe spam
Creo que el problema lo tienes en que en .NET los arrays empiezan por CERO y
no por uno, aunque en tu código estés desperdiciando el elemento cero, no
debería darte error, salvo que uses la variable "i" en las dos últimas
asignaciones del bucle, que creo que no está porque has copiado "a mano" el
código...

En el Redim Preserve no es necesario que indiques el tipo de datos, esa
información ya la sabe el compilador.
Y si la estructura está definida en un módulo, deberías usar el nombre del
módulo para acceder a la estructura...

¿Que error es el que te da?

Nos vemos.
Guillermo
Microsoft VB MVP desde 1997
Mentor Asociado de Solid Quality Learning Iberoamericana

Te invito a mi sitio: http://www.elguille.info/
Resuelve tus dudas en: http://foros.elguille.info/

"Ivan Pequeño" escribió en el mensaje
news:
Estimados colegas...
Cual sería la equivalencia en Vb.Net
del Código siguiente ?

Obviamente agradeciendo de antemano

Esto debería estar en un módulo de manera que
sea accesible a todos los form, clases, etc

'Esto es el equivalente del Type de Vb 6.0
Structure StVarDat
Dim Nvl As Byte
Dim Nom As String
Dim Tip As String
End Structure
'Pero aqui empiezan los problemas
Public VarDat() As StVarDat
Public VarMax As Short

y en alguna clase necesitaré hacer como en Vb 6.0

'Y aqui ya no son problemas sino catástrofes
VarMax = TotalDeVariablesCobol
ReDim Preserve VarDat(TotalDeVariablesCobol) As StVarDat
For i = 1 to TotalDeVariablesCobol
VarDat(i).Nvl = 10
VarDat().Nom = "WS-RUT-NUM"
VarDat().Tip = "X"
Next

Reitero mis agradecimientos por una eventual orientación

Preguntas similares