Перехват событий - C#

Узнай цену своей работы

Формулировка задачи:

Здравствуйте! Подскажите пожалуйста, как быть! Проблема с событиями. Есть dll по пересыкле данных, в котором есть событие public event Action<Packet> PacketReceived; и protected virtual void OnPacketReceived(Packet packet); класса NetworkProtocol (Packet это внутренний тип даных) Как правельно вызывать это событие? С одной программы послыаются данные, а с помощью этого события(программу которую я пишу) их нужно поймать. Вот ) Надеюсь понятно

Решение задачи: «Перехват событий»

textual
Листинг программы
// Это примерно изначальный класс в dll
class Some
{
    public event Action<string> PacketReceived;
    protected virtual void OnPacketReceived(string packet)
    {
        if (PacketReceived != null)
            PacketReceived("DO");
    }
}
 
// То как можно обработать событие:
// Где то в методе
some.PacketReceived += new Action<string>(some_PacketReceived); // Подписываемся на событие.
 
// Где то в классе
Some some = new Some();
...
void some_PacketReceived(string obj)
{
    Console.WriteLine(obj);
    Console.Read();
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.6 из 5