-2
votes

Ajouter plus d'une liste de classe dans une liste de classe

Je dois rejoindre plus d'une liste dans une liste. Cette question semble être courante mais mon problème est peut-être très différent. Parce que j'ai 3 cours. J'ai créé 3 listes basées sur ces classes xxx

ces classes indiquent uniquement l'attribut qui est stocké dans ces listes. J'ai créé une autre liste xxx

ce qtmlist aussi une classe. Cette classe a xxx

maintenant j'ai essayé d'ajouter LSTQTM, LSTQTMMAIN et LSTQTMSTATS dans la liste LSTQTMList. donc j'ai utilisé xxx

j'ai eu les erreurs sont

C # Un membre "lstqtmlist.lstqtmmain" lstqtmist.lstqtmmain "ne peut pas être utilisé comme un Méthode

et ainsi de suite.

Pourriez-vous s'il vous plaît quelqu'un me donner un indice pour résoudre mon problème?


5 commentaires

Toutes les listes sont-elles la même longueur?


@Thegeneral non monsieur, ces longueurs sont différentes


Pouvez-vous simplement l'assainir: qtmlist.qtmmain = lstqtmmain; clone it (dés-référence / crée des valeurs en double)? Ou ajouter les nouvelles valeurs à une collection déjà existante?


@Jimi est correct, rien que je puisse ajouter.


Le message indique tout ce dont vous avez besoin pour savoir ... Vous l'appelez comme une méthode, mais ce n'est pas une méthode ... qtmlist.qtm (lstqtm); ceci n'est pas valide c # ... vos autres appels aussi


4 Réponses :


4
votes

Vous devez utiliser pour les paramètres. xxx


1 commentaires

Pourriez-vous s'il vous plaît expliquer pourquoi votre solution fonctionne pour le PO pour aider à clarifier pourquoi les leurs devraient ne pas être travaillés; Cela ajouterait de la valeur.



-1
votes

Vous pouvez essayer ceci:

qtmList = new QTMList();
qtmList.QTMMain = lstQTMmain;
qtmList.QTM = lstQTM;
qtmList.QTMStats = lstQTMStats;


0 commentaires

0
votes

L'erreur est causée par la manière dont vous utilisez des champs de votre classe qtmlist . Vous utilisez Ils comme s'ils étaient des méthodes, c'est-à-dire des arguments de passage entre crochets. C'est comme ça que vous appelez une méthode. Afin d'attribuer de la valeur à un champ ou à une propriété d'une classe, vous utilisez simplement = opérateur. Ainsi, votre code pourrait être simplifié pour: xxx

ou vous pouvez initialiser les listes sur qtmlist initialisation: xxx


1 commentaires

Un peu tard dans le jeu de balle ... mais oui, vous avez raison un peu , qu'en est-il de l'attribution de ces listes à quelque chose que l'utilisateur a?



1
votes

Vous ne pouvez pas appeler une propriété comme une méthode, le message est assez clair.

qtmList.QTMMain.AddRange(lstQTMmain)


0 commentaires