当属性被设置时,执行一些操作

本文关键字:执行 操作 属性 设置 | 更新日期: 2023-09-27 17:55:06

想象一下:

public class Foo
{
    private IList<string> WasSet;
    public string Prop1 {get;set;}
    public bool Prop2 {get;set;}
...
    public int Prop900 {get;set;}
}

我想做:

WasSet.Add(PropertyName);

当属性被设置时,执行一些操作

对于auto属性,您不能这样做,因为编译器正在为您生成适当的支持字段和访问器。您需要自己编写属性并处理set功能来更新列表。

非自动属性总是由一个简单的字段支持的琐碎实现,没有"触发器"等。你必须写一个完整的属性。您可能希望实现INotifyPropertyChanged以使其更通用。