2
我有一个类的属性作为对象的任何更多的类。例如:如何重置PropertyGrid中组件属性的默认值?
public Class Humans
{
public Person Human {get; set;}
[DefaulValue("New York")]
public string Sity {get; set;}
}
public struct Person
{
[DefaulValue("Name")]
public string Name {get; set;}
[DefaulValue("Surname")]
public string Surname {get; set;}
}
如果我想重置人类类,我写这篇文章:
PropertyDescriptorCollection props = TypeDescriptor.GetProperties(Humans);
foreach (PropertyDescriptor pr in props)
{
if (pr.Attributes.OfType<DefaultValueAttribute>().Any())
{
pr.ResetValue(obj);
}
}
在财产的情况下,一切都发生完全增宽,并为人类的属性没有任何反应。那么以下是如何重置为这些属性的默认值?
事实是,我想使用重置方法的值不仅仅是一个类。因此,每个班级都需要添加一个方法Reset {membername}? – Nasay