Пользовательское событие

Есть свое событие, описанной в основной части кода. Описываю класс, в котором хочу вызвать данное событие. Как это сделать? Хотелось бы еще и с параметром вызов делать.


Ответы (1 шт):

Автор решения: Yuri Ryabchenko

Добавьте класс:

public class TextEventArgs : EventArgs
{
    public string Message { get; private set; }

    public TextEventArgs(string message)
    {
        Message = message;
    }
}

сгенерировать событие в коде ваше класса MyEvent:

MyEvent?.Invoke(this, new TextEventArgs("ya.ru", MyEvent));

В основном коде подписаться на получение уведомлений:

MyConnet.Info += TextLogAdd;

Сам метод TextLogAdd может выглядеть так:

public void TextLogAdd(object sender, TextEventArgs e)
    {
        textBoxLog.AppendLine(e.Message);
    }
→ Ссылка