【发布时间】:2010-07-12 17:57:42
【问题描述】:
我需要在运行时为某些属性添加一个属性(出于设计时目的)。我知道我可以在课堂上这样做:
TypeDescriptor.AddAttributes(typeof(MyType), new MyRuntimeAttribute());
但我找不到任何方法来为属性做同样的事情。
有什么建议吗?
UPD:确切的任务如下:
public class BaseClass {
public BaseClass(string name) { Name = name; }
public Name { get; set; }
}
public class Descendant1: BaseClass {
public Descendant1() : base("Default Name 1") { }
}
...
public class DescendantN: BaseClass {
public DescendantN() : base("Default Name N") { }
}
我希望每个后代在 Name 属性中都有各自的 DefaultValueAttribute,并具有相应的默认名称。而且我不想在每个血统上硬编码 DefaultValueAttribute :)
【问题讨论】: