@Gorik2927

Ребята, почему событие null?

Сори что много инфы))
Есть форма MainWindows
У нее есть кнопка которая вызывает Форму AddContent
private void ButtonAddSpending_Click(object sender, RoutedEventArgs e) {          
            AddContent addContent = new AddContent();
            addContent.Owner = this;
            addContent.ShowDialog();
        }

У формы AddContent есть событие public event EventHandler EventAddContent;

при вызове формы, в конструкторе подписываюсь на событие.
buttonAddContent.Click += ButtonAddContent_Click;
вот сам ButtonAddContent_Click

private void ButtonAddContent_Click(object sender, RoutedEventArgs e) {
            EventAddContent?.Invoke(this, EventArgs.Empty);
            this.Activate();
            buttonAddContent.IsEnabled = false;
        }


Есть класс который управляет всеми движениями в приложении
class MainPresenter
{
private readonly IAddContentPresenter _addContent;
в конструкторе в конструктор передаю интерфейс, в котором есть это событие.
(Форма реализует данный интерфейс)

public MainPresenter( IAddContentPresenter addContent) {           
            _addContent = addContent;
            _addContent.EventAddContent += View_AddContent;
        }

в этом классе уже есть метод который реализует нажатие

private void View_AddContent(object sender, EventArgs e) { //Метод записывает данные в БД
            _manager.SetDBHistories(_history);
        }

Конструктор класса вызывается в MainWindow
событие не работает!
в отладчике событие показывает
null
 EventAddContent?.Invoke(this, EventArgs.Empty);
  • Вопрос задан
  • 78 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы