Czy ktoś może mi powiedzieć, jak utworzyć listę w jednej klasie i uzyskać do niej dostęp od innej?Lista dostępu od innej klasy
Odpowiedz
public class MyClass {
private List<string> myList = new List<string>();
public List<string> GetList()
{
return myList;
}
}
Możesz mieć cokolwiek tam zamiast łańcucha. Teraz możesz zrobić obiekt MyClass i uzyskać dostęp do metody łonowej, zaimplementowanej w celu zwrócenia myList.
public class CallingClass {
MyClass myClass = new MyClass();
public void GetList()
{
List<string> calledList = myClass.GetList();
///More code here...
}
}
Aby utworzyć połączenie lista konstruktora listy:
class Foo
{
private List<Item> myList = new List<Item>();
}
Aby uczynić go dostępnym dla innych klas dodać obiekt publiczny, który naraża go.
class Foo
{
private List<Item> myList = new List<Item();
public List<Item> MyList
{
get { return myList; }
}
}
Aby otworzyć listę z innej klasy trzeba mieć odniesienie do obiektu typu Foo
. Zakładając, że masz takie odniesienie i nazywa się foo
, możesz napisać foo.MyList
, aby uzyskać dostęp do listy.
Być może zechcesz zachować ostrożność, jeśli bezpośrednio wystawisz Listy. Jeśli chcesz tylko zezwolić na dostęp tylko do odczytu, rozważ udostępnienie zamiast tego numeru ReadOnlyCollection
.
Dzięki Mark. Przepraszam, brzmi prosto, ale czy mógłbyś pokazać mi przykład dostępu do mojej listy od innej klasy? – Brian
@Brian, Utwórz obiekt Foo w klasie dostępu jako Foo objFoo = new Foo(); a następnie dostęp do MyList jako List
Jak to działa? Kiedy nazwiesz go w innej klasie, będzie to pusta lista. –
Niż za ten zwięzły przykład. – Brian
Moja przyjemność :) Happy Coding –
Dziękuję, to jest najbardziej przydatna i pomocna odpowiedź! – Stanojkovic