[英]Is it possible to declare a property raising PropertyChanged event using a syntax similar to an auto-property ({ get; set; })?
[英]Is it possible, to evaluate the event of calling a set property?
假设我们有一个带有一个自动获取/设置属性的普通C#类。
public class Entity
{
public String SomeProperty {get;set;}
}
调用SomeProperty的set方法时,是否有任何引发并且可以评估的事件?
这样的事情是否有可能发生,也许是反思?:
伪代码,无真实代码:
Entity e = new Entity();
e.SomeProperty.SetterCalled += OnSetterCalled;
private void OnSetterCalled(Sender propertyinfo)
{
propertyinfo pi = propertyinfo;
Console.Write (pi.Name);
}
我知道,我可以使用CallerMember,但是后来我不得不更改auto属性。
不,没有办法做到这一点。
设置者就是这样:
_backingVariable = value;
分配不会固有地调用任何方法。 就目前而言,在利用自动属性进行属性设置期间无法引发事件。
您可以使用类似https://stackoverflow.com/a/18002490/1783619中所述的技术在编译时更改代码。
但是否则,将无法执行此操作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.