Public Class PurchaseOrder
Public shipTo As USAddress
Public billTo As USAddress
Public comment As String
End Class
Public Class USAddress
Public name As String
Public street As String
Public city As String
Public state As String
Public zip As Decimal
End Class
Module Serial
Dim po As New PurchaseOrder
Public Sub main()
po.shipTo.city = "test"
End Sub
End Module
Le problem est que lorsque je veut renseigner po.shipTo.city = "test" le
system me dit que l'objet n'existe pas !!
Pourtant lorsque je tape ma ligne po.shitpto. le vb m'ammene bien les
valeurs dispo en automatique c'est a dir name ou city ou state.
je pourrais déclarer directement tt as new usaddress mais là je ne vois pas
l'interet de faire des classes imbriquées si il faut décalrer tout les
niveau.
Pour info mon code est largement plus compliqué que l'exemple ci dessus que
j'ai volontairement simplifié pour mieux cilber mon probleme.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Gilles TOURREAU [MVP]
"OLIVIER" a écrit dans le message de news:
Bonsoir à tous,
J'ai un petit probleme dans mon code VB .net
Voici le code :
Public Class PurchaseOrder Public shipTo As USAddress Public billTo As USAddress Public comment As String End Class Public Class USAddress Public name As String Public street As String Public city As String Public state As String Public zip As Decimal End Class Module Serial Dim po As New PurchaseOrder
Public Sub main() po.shipTo.city = "test" End Sub End Module
Le problem est que lorsque je veut renseigner po.shipTo.city = "test" le system me dit que l'objet n'existe pas !!
Pourtant lorsque je tape ma ligne po.shitpto. le vb m'ammene bien les valeurs dispo en automatique c'est a dir name ou city ou state. je pourrais déclarer directement tt as new usaddress mais là je ne vois pas l'interet de faire des classes imbriquées si il faut décalrer tout les niveau.
Pour info mon code est largement plus compliqué que l'exemple ci dessus que j'ai volontairement simplifié pour mieux cilber mon probleme.
J'espere que quelqu'un aura une idée.
Merci d'avance
Olivier
Bonjour,
C'est normal, car vous devez créer une instance de USAddress dans po.shipTo :
Public Sub main() po.shipTo = New USAddress() po.shipTo.city = "test" End Sub
Cordialement
-- Gilles TOURREAU - MVP C#
S.A.R.L. P.O.S Le spécialiste en motoculture depuis + de 30 ans ! http://www.pos.fr
"OLIVIER" <olivier.cordierot@wanadoo.fr> a écrit dans le message de
news:u7AOKYqXIHA.4440@TK2MSFTNGP06.phx.gbl...
Bonsoir à tous,
J'ai un petit probleme dans mon code VB .net
Voici le code :
Public Class PurchaseOrder
Public shipTo As USAddress
Public billTo As USAddress
Public comment As String
End Class
Public Class USAddress
Public name As String
Public street As String
Public city As String
Public state As String
Public zip As Decimal
End Class
Module Serial
Dim po As New PurchaseOrder
Public Sub main()
po.shipTo.city = "test"
End Sub
End Module
Le problem est que lorsque je veut renseigner po.shipTo.city = "test" le
system me dit que l'objet n'existe pas !!
Pourtant lorsque je tape ma ligne po.shitpto. le vb m'ammene bien les
valeurs dispo en automatique c'est a dir name ou city ou state.
je pourrais déclarer directement tt as new usaddress mais là je ne vois
pas l'interet de faire des classes imbriquées si il faut décalrer tout les
niveau.
Pour info mon code est largement plus compliqué que l'exemple ci dessus
que j'ai volontairement simplifié pour mieux cilber mon probleme.
J'espere que quelqu'un aura une idée.
Merci d'avance
Olivier
Bonjour,
C'est normal, car vous devez créer une instance de USAddress dans po.shipTo
:
Public Sub main()
po.shipTo = New USAddress()
po.shipTo.city = "test"
End Sub
Public Class PurchaseOrder Public shipTo As USAddress Public billTo As USAddress Public comment As String End Class Public Class USAddress Public name As String Public street As String Public city As String Public state As String Public zip As Decimal End Class Module Serial Dim po As New PurchaseOrder
Public Sub main() po.shipTo.city = "test" End Sub End Module
Le problem est que lorsque je veut renseigner po.shipTo.city = "test" le system me dit que l'objet n'existe pas !!
Pourtant lorsque je tape ma ligne po.shitpto. le vb m'ammene bien les valeurs dispo en automatique c'est a dir name ou city ou state. je pourrais déclarer directement tt as new usaddress mais là je ne vois pas l'interet de faire des classes imbriquées si il faut décalrer tout les niveau.
Pour info mon code est largement plus compliqué que l'exemple ci dessus que j'ai volontairement simplifié pour mieux cilber mon probleme.
J'espere que quelqu'un aura une idée.
Merci d'avance
Olivier
Bonjour,
C'est normal, car vous devez créer une instance de USAddress dans po.shipTo :
Public Sub main() po.shipTo = New USAddress() po.shipTo.city = "test" End Sub
Cordialement
-- Gilles TOURREAU - MVP C#
S.A.R.L. P.O.S Le spécialiste en motoculture depuis + de 30 ans ! http://www.pos.fr