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

Framework .NET Discussion :

Problème d'affectation dans des listes d'objets


Sujet :

Framework .NET

  1. #1
    Membre extrêmement actif Avatar de DotNET74
    Homme Profil pro
    Watch R&D Engineer & Apprenti .NET
    Inscrit en
    Août 2003
    Messages
    1 986
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France

    Informations professionnelles :
    Activité : Watch R&D Engineer & Apprenti .NET

    Informations forums :
    Inscription : Août 2003
    Messages : 1 986
    Par défaut Problème d'affectation dans des listes d'objets
    Hello,

    je suis devant un problème que je ne m'explique pas...

    J'ai une classe d'objet A comme suit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public class A:
    {
     public string ID {get;set;}
     public ObservableCollection<B> ListeB {get;set;}
    }
    Et la classe B comme suit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public class B:
    {
     public string ID {get;set;}
    }
    Mon problème est que lorsque j'affecte une valeur à ID de l'un des éléments de ListeB, tout les éléments prennent la même valeur.

    Par exemple, si la ListB contient deux éléments de type B comme suit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    A MonA = new A();
    A.ListeB.Add(new B);
    A.ListeB.Add(new B);
    Si j'effectue le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    A.ListeB[0].ID = "Toto";
    Automatiquement le A.ListeB[1].ID est égale à "Toto" !!!!

    Je ne comprends pas pourquoi...

    Merci

  2. #2
    Expert confirmé
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Par défaut
    Salut,

    Tu programmes en quel langage? Si c'est du C# ton programme ne peut pas compiler.

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  3. #3
    Membre extrêmement actif Avatar de DotNET74
    Homme Profil pro
    Watch R&D Engineer & Apprenti .NET
    Inscrit en
    Août 2003
    Messages
    1 986
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France

    Informations professionnelles :
    Activité : Watch R&D Engineer & Apprenti .NET

    Informations forums :
    Inscription : Août 2003
    Messages : 1 986
    Par défaut
    C'est en C#....

    Mais j'ai résolu mon soucis....

    J'avais une initialisation à un autre endroit qui parasitait la suite...

    Merci

  4. #4
    Expert confirmé
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Par défaut
    Citation Envoyé par DotNET74 Voir le message
    C'est en C#....
    Et tel que tu l'écris ça compile?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public class A:
    {
     public string ID {get;set;}
     public ObservableCollection<B> ListeB {get;set;}
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    A MonA = new A();
    A.ListeB.Add(new B);
    A.ListeB.Add(new B);
    "Winter is coming" (ma nouvelle page d'accueil)

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

Discussions similaires

  1. problème de récupération d'une liste d'objet au niveau des DAO
    Par yness dans le forum Persistance des données
    Réponses: 1
    Dernier message: 25/04/2011, 19h57
  2. Problème d'affectation d'une liste globale dans une classe
    Par _mich_ dans le forum Général Python
    Réponses: 4
    Dernier message: 30/06/2008, 17h50
  3. [CSS] Problème de marge dans des listes.
    Par Istrella dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 13/09/2006, 09h16
  4. Présentation dans des listes imbriquées
    Par Ghusse dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 29/09/2005, 09h35
  5. [langage] probleme avec les listes dans des listes
    Par pqmoltonel dans le forum Langage
    Réponses: 7
    Dernier message: 27/04/2004, 12h32

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