Ссылка 'this' в динамическом обработчике событий

В моем «myClass» класс, я использую Reflection.Emit для динамической записи обработчика события для одного из класса myClass & apos; члены.

Я сделал это успешно.

Теперь я хочу изменить обработчик событий для вызова одного из методов экземпляра в классе myClass.

Однако я не могу понять, как нажать на ссылку «это». в стек MSIL с помощью Reflection.Emit. В обработчике события Ldarg_0 является не ссылкой на «this», а скорее первым параметром обработчика события.

Кто-нибудь знает, как нажать на ссылку «это»? в стеке, чтобы я мог вызвать метод экземпляра. Например, это то, что я хотел бы, чтобы код C # выглядел так:

public class myClass
{
private myObj1 obj1;
public myClass() {
   this.init();
}

private void init()
{
   obj1.myEvent += new myEvent_EventHandler(theHandler);
}

private void theHandler(myObj2 obj2, myObj3 obj3)
{
   // this is the part I'm having trouble with
   this.myFunction(obj2);
}

private void myFunction(myObj2 obj2)
{
   // irrelevant
}
}

Спасибо!

Ответы на вопрос(2)

Ваш ответ на вопрос