这段代码:
foreach (PropertyDescriptor descriptor in TypeDescriptor.GetProperties(lst[0]))
{
Console.WriteLine(descriptor.Name);
}
将写出我列表中所有元素的名称。 IE。 FirstName/LastName 或什么。我如何写出一个元素的 child ?如果我的列表有一个元素 Cars,它有汽车的类型和颜色,我将如何使用 TypeDescriptor 来写出它?
我现在得到的是:
- 名字
- 姓氏
- 汽车
我想要的是这样的:
- 名字
- 姓氏
- 汽车:丰田,红色
- 汽车:三菱,Green
有人知道怎么做吗?
最佳答案
PropertyDescriptor
类提供了一个名为 GetChildProperties(System.Object)
的方法。
您应该能够将当前对象的引用传递给该方法,并作为返回,接收包含子属性的另一个集合。
从此类继承以获得全部功能甚至可能是有意义的。
参见 here用于文档。
关于c# - TypeDescriptor 和子元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15662164/