Xml в TreeView со связью данных

Стартовая страница Форумы Разработка и интеграция Xml в TreeView со связью данных

Просмотр 8 сообщений - с 46 по 53 (из 53 всего)
  • Автор
    Записи
  • #34987
    Mikhail
    Модератор

    Как внутри дочерних форм подписаться на нажатие кнопки находящейся на главной форме?

    Чтобы подписаться на событие какого-либо объекта, нужна ссылка на этот объект.

    При этом если дочерняя форма будет удалена, то обработчик, который относится к кнопке на главной форме, не будет очищен автоматически, и произойдёт утечка памяти. Нужно вручную отписываться от событий при закрытии дочерней формы.

    Например, в приложении Администратор каждая дочерняя форма имеет свой объект с событиями, которые инициируются главной формой.

    #35002
    manjey73
    Участник

    А можно пример в таком случае?
    Тут видимо и получается, что нет отписки от события. Видимо будет более правильным не delegate сделать с кодом, как в последнем случае я сделал. А как делал первый раз, передача кнопки в форму и там подписка на событие.
    Только как перед закрытием запустить из главной формы метод в дочерней форме, в котором отписаться от события и уже потом сделать Close() ?

    #35003
    manjey73
    Участник

    эээ, обработчик кнопки не на главной форме.

    На главной форме типа такого FrmParameters frm = new FrmParameters(Кнопка);

    А уже в форме FrmParameters есть событие на эту Кнопку.

    Так делал первый раз, но без отписки перед закрытием. Эффект был аналогичным, сколько раз прошелся по дереву TreeView, столько раз и запустится обработчик, который в принципе с TreeView ну никак не связан.

    • Ответ изменён 1 год, 11 месяцев назад пользователем manjey73.
    #35009
    manjey73
    Участник

    @Mikhail спасибо, отписка помогла.

    Сделал как было в начальном варианте с передачей в форму кнопки и там подписка, + публичный метод с отпиской, который запускаю перед закрытием..

    Теперь все равно сколько раз брожу по веткам TreeView, событие срабатывает только на реально открытой форме один раз.

    • Ответ изменён 1 год, 11 месяцев назад пользователем manjey73.
    #35025
    JurasskPark
    Участник

    OFFTOP. А какие на ферме ещё есть животные? Коровки?

    #35026
    manjey73
    Участник

    Всякие, Чебурашки например. Ещё есть Грибы, и ещё Рыба 😀

    #35027
    manjey73
    Участник

    2

    screen

    Вообще про рыбу и грибы потом придумал. Фактически модуль может управлять любой фермой. Все будет зависеть от алгоритмов управления.

    Цель сделать так, чтобы можно было обходиться без ПЛК. Или передавать изменения температурно-влажностного режима через ПЛК. То есть менять уставки по дням или часам.

    #35031
    JurasskPark
    Участник

    100 очков Гриффиндору за Чебурашку! 😂

Просмотр 8 сообщений - с 46 по 53 (из 53 всего)
  • Для ответа в этой теме необходимо авторизоваться.