IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Probleme d'Accession à Object


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert Avatar de Danyel
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2005
    Messages
    1 699
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 699
    Par défaut Probleme d'Accession à Object
    Salut All,

    Je n'arrive pas à acceder à une liste d'objets (qui existent) et qui provoque une exception


    La liste des objects sont dans un panel nomme Panel_EnQuestion, et les objects s'appelle : Label_Test_1, Label_Test_2, Label_Test_3, etc ... et sont dans des TableLayoutPanel specifiques avec des noms similaires : TLP_Test_1, TLP_Test_2, TLP_Test_3, etc ...
    Et j'utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    For X = 1 To 10
           Panel_EnQuestion.Controls("Label_Test_" & CStr(X)).Text = "Bla Bla Bla"
    Next
    Qui provoque :
    L'exception System.NullReferenceException n'a pas été gérée.
    Message="La référence d'objet n'est pas définie à une instance d'un objet."

    Je pense que c'est les TLP qui rentrent en compte, mais je ne sais pas comment faire pour les appeller.
    J'ai essaye, mais que je n'arrive pas a faire : (qui marchera)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    For X = 1 To 10
           TLP_Test_IcilaValeurdeX.Controls("Label_Test_" & CStr(X)).Text = "Bla Bla Bla"
    Next

    Merci pour votre aide.
    Danyel.

  2. #2
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 197
    Par défaut
    le message d'erreur est clair, l'objet nommé n'existe pas

    qu'appelles tu TLP ?
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre Expert Avatar de Danyel
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2005
    Messages
    1 699
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 699
    Par défaut
    Oui oui j'ai bien compris le message d'erreur.
    Il ne le trouve pas car il est dans un TLP (TableLayoutPanel)

    J'ai reussi a y acceder directement par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    For X = 1 To 10
      TLP_Test_1.Controls("Label_Test_1").Text = "Bla Bla Bla"
    Next
    Mais je ne sais pas comment faire pour remplacer les 1 par le X de la boucle.

  4. #4
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 197
    Par défaut
    si ton tlp est dans panel, tu peux faire


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    panel.controls("xxxx" & x).controls("tlp_" & x).text

    je vois pas où tu bloques
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Membre Expert Avatar de Danyel
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2005
    Messages
    1 699
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 699
    Par défaut
    Oui sperot, ca je l'ai deja fait et vu (dans mon premier exemple)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    x.Controls("Label_Test_" & CStr(X)).Text = "Bla Bla Bla"
    Mon probleme, c'est pour le TLP qui contient aussi le 1.


    Edit
    Ah, je viens de voir ta modif. je vais voir si ok.

  6. #6
    Membre Expert Avatar de pacmann
    Homme Profil pro
    Consulté Oracle
    Inscrit en
    Juin 2004
    Messages
    1 626
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consulté Oracle
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 626
    Par défaut
    Salut !
    Est-tu sûr que tes controls sont tous dans la TLP ?

    J'ai fait le test avec la boucle et les X, et ça marche.
    Par contre, au départ, ça plantait parce que je croyais que l'une des textboxX était dans le pannel, mais non...(alors que je les ai tous insérés graphiquement de la même manière)

    Par exemple, tente d'afficher dans un premier temps le TLP.controls.count

  7. #7
    Membre Expert Avatar de Danyel
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2005
    Messages
    1 699
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 699
    Par défaut
    Alors voici comment faire sur les bases de sperot :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    For X = 1 to 10
         Panel_EnQuestion.Controls("TLP_Test_" & X).Controls("Label_Test_" & X).Text = "Bla Bla Bla"
    Next
    Je ne savais pas qu'on pouvait concatener plusieurs controls à la suite.
    Un immense merci sperot pour cette info


    pacmann
    Oui, mais le probleme etait qu'il n'y avait pas qu'1 seul TLP, mais autant que de donnees ... d'ou le probleme.

    Bonne Journee All.
    ++ Danyel.

  8. #8
    Membre Expert Avatar de Danyel
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2005
    Messages
    1 699
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 699
    Par défaut
    J'ai une autre erreur lorsque j'utilise un picturebox avec la meme procédure :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    For X = 1 to 10
         Panel_EnQuestion.Controls("TLP_Test_" & X).Controls("PictureBox_Test_" & X).Visible = False
    Next
    avec l'erreur :
    La référence d'objet n'est pas définie à une instance d'un objet.

    Il doit y avoir une autre technique pour les picturebox ... mais j'ai pas trouve.
    Une idée ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. probleme "Cannot access a disposed object"
    Par the-morpher dans le forum Windows Forms
    Réponses: 4
    Dernier message: 04/06/2009, 16h52
  2. Probleme d'access a un object dans une VBox
    Par NeqO55 dans le forum MXML
    Réponses: 1
    Dernier message: 21/08/2008, 17h56
  3. Probleme sous Access 2002 avec un fichier Access 2000
    Par branqueira dans le forum Access
    Réponses: 1
    Dernier message: 14/10/2005, 17h43
  4. Direct Access Object sous Delphi
    Par eponette dans le forum Langage
    Réponses: 4
    Dernier message: 07/09/2005, 14h33
  5. [Data Access Object]Intérêt de la factory ?
    Par le Daoud dans le forum Général Java
    Réponses: 2
    Dernier message: 21/04/2005, 09h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo