@iRumba

Почему не работает событие (C#)?

Есть некий класс. Внутри класса есть делегат и событие

public delegate void stChanged();

public event stChanged StateChanged;

но в том месте, где должно происходить событие, выполнение кода прекращается.
то есть после
StateChanged();
ничего не происходит.
я не знаю как настроить дебугер на отлов всех ошибок, поэтому просто внес строку в блок try{}
И правда, сработало исключение с сообщением: "Ссылка на объект не указывает на экземпляр объекта"
Как понимать такое сообщение при вызове события?
  • Вопрос задан
  • 1474 просмотра
Решения вопроса 1
Neuroware
@Neuroware
Программист в свободное от работы время
никто не подписался на событие, поэтому будет "null", на событие ктото должен быть подписан, прежде чем его вызвать.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
AxisPod
@AxisPod
C# это не PHP, тупо начать писать не прочитав ни одной книги не получится.
Ответ написан
StateChanged += метод_void_не_принимающий_параметров;
StateChanged();
Ответ написан
Комментировать
@Nubzilo
Изучаю C#
А вызывать все таки лучше с проверкой подписано ли кто то
if (StateChanged != null)
 StateChanged();
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы