Я создал следующий образец кода:
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.");
}
}
Когда я делаю это таким образом, у будет объект типа ActionTestClass (который создан для х). Теперь, когда я меняю строку
this.Act = new Action(this.ActionMethod);
до
this.Act = new Action(() => MessageBox.Show("This is a test."));
y (цель действия) будет нулевым. Есть ли способ, которым я могу получить Target (в примере ActionTestClass-объект) также при использовании Anonymous Action?