Отписаться анонимный метод в C # - PullRequest
208 голосов
/ 08 октября 2008

Можно ли отписаться анонимным методом от события?

Если я подпишусь на подобное событие:

void MyMethod()
{
    Console.WriteLine("I did it!");
}

MyEvent += MyMethod;

Я могу отменить подписку следующим образом:

MyEvent -= MyMethod;

Но если я подпишусь, используя анонимный метод:

MyEvent += delegate(){Console.WriteLine("I did it!");};

возможно ли отписаться от этого анонимного метода? Если да, то как?

Ответы [ 11 ]

0 голосов
/ 21 января 2014

Если вы хотите сослаться на какой-либо объект с этим делегатом, возможно, вы можете использовать Delegate.CreateDelegate (Type, Object target, MethodInfo methodInfo) .net считает делегат равным по цели и methodInfo

...