Получение цели действия

Я создал следующий Sample-Code:

class Program {
    static void Main(string[] args) {
        var x = new ActionTestClass();
        x.ActionTest();
        var y = x.Act.Target;
    }
}

public class ActionTestClass {
    public Action Act;
    public void ActionTest() {
        this.Act = new Action(this.ActionMethod);
    }

    private void ActionMethod() {
        MessageBox.Show("This is a test.");
    }
}

Когда я сделаю это таким образом, y будет объектом типа ActionTestClass (который создается для x). Теперь, когда я изменю строку

this.Act = new Action(this.ActionMethod);

на

this.Act = new Action(() => MessageBox.Show("This is a test."));

, y (цель действия) будет нулевым. Есть ли способ получить Target (в примере - объект ActionTestClass) также при использовании анонимного действия?

6
задан BennoDual 28 November 2011 в 15:21
поделиться