11
votes

Liste d'accès d'une autre classe

Quelqu'un peut-il me dire comment créer une liste dans une classe et y accéder à un autre?


0 commentaires

3 Réponses :


9
votes

Pour créer une liste Appelez le constructeur de liste:

class Foo
{
    private List<Item> myList = new List<Item();

    public List<Item> MyList
    {
        get { return myList; }
    }
}


2 commentaires

@Brian, créez un objet de foo dans la classe d'accès comme foo objfoo = nouveau foo (); puis accéder à la liste de myList comme liste

myList1 = objfoo.myliste;


Comment ça marche? Lorsque vous l'appelez dans une autre classe, ce sera une liste vide.



29
votes
public class CallingClass {

    MyClass myClass = new MyClass();

    public void GetList()
    {
        List<string> calledList = myClass.GetList();
        ///More code here...
    }
}

3 commentaires

Merci pour cet exemple succinct.


Merci, c'est une réponse la plus utile et utile!


Mais chaque fois que vous faites myclass myClass = nouveau myClass (); Dans une autre classe, la liste est à nouveau vide .... Comment pouvez-vous accéder à la liste de myClass existante avec le contenu d'une autre classe?



3
votes

Si vous avez besoin d'une liste déclarée comme une propriété statique

class ListShare 
{
    public static List<String> DataList { get; set; } = new List<String>();
}

class ListUse
{
    public void AddData()
    {
        ListShare.DataList.Add("content ...");
    }

    public void ClearData()
    {
        ListShare.DataList.Clear();
    }
}


2 commentaires

J'ai pu utiliser cette réponse, je ne pouvais pas bien comprendre le premier, mais j'ai fait des changements.


Classe Listususe {Public Void AddData (String Data2Add) {ListShare.Datalist.Ajouter (Data2Ajoud); }} PROGRAMME DE LA CLASSE {VOYAGE STATIQUE MAIN () {LISTUSE DATADADDDD = Nouvelle liste d'écoute (); String Data2Ajouter = "Contenu"; Listus.adddata (Data2Ajouter);