У меня есть класс, который создает список другого класса. , который выглядит следующим образом:Доступ к списку классов из другого класса - исключение нулевой ссылки
class SortItAll
{
Recipient rec;
public List<Recipient> listofRec = new List<Recipient>();
public void sortToClass()
{
while (isThereNextLine()) { //while there is a following line
loadNextLine(); //load it
rec = new Recipient(loadNextPiece(), //break that line to pieces and send them as arguments to create an instance of "Recipient" class
loadNextPiece(),
loadNextPiece(),
loadNextPiece());
listofRec.Add(rec); //add the created instance to my list
}
}
Из моего класса Form1 я называю этот метод (sortToClass()), который по моей логике, должен заполнить свой список с этим конкретным классом. Тогда я хочу написать list.count() в текстовое поле:
public Form1()
{
SortItAll sort = new SortItAll(); //create the instance of the class
sort.sortToClass(); //within which i call the method to fill my list
txt_out.Text = sort.listofRec.Count().ToString(); //writing out its count to a textbox
InitializeComponent();
}
И теперь моя проблема, когда я пытаюсь отлаживать, он останавливает меня с
Nullreference exception pointing to -> "txt_out.Text = sort.listofRec.Count().ToString();" in Form1.
Тем не менее, во время отладки I может проверить местные жители, где он заявляет:
sort -> listOfRec -> Count = 4.
В чем может быть проблема?
Это txt_out, что является нулевым? –
Попробуйте запустить код _after_ вызов 'InitializeComponent'; это должно убедиться, что все элементы управления (например, 'txt_out') инициализированы, я думаю. –
Добро пожаловать в переполнение стека! Почти все случаи «NullReferenceException» одинаковы. См. «[Что такое исключение NullReferenceException в .NET?] (Http://stackoverflow.com/questions/4660142/what-is-a-nullreferenceexception-in-net)» для некоторых советов. –