c# – TypeDescriptor和子元素

这段代码:

foreach (PropertyDescriptor descriptor in TypeDescriptor.GetProperties(lst[0]))
{
   Console.WriteLine(descriptor.Name);
}

将写出我列表中所有元素的名称.即FirstName / LastName或者什么.如何写出元素的子元素?如果我的列表中有一个元素Cars,它有汽车的类型和颜色,我如何使用TypeDescriptor写出来?

我现在得到的是:

> FirstName
>姓氏
>车

我想要的是这样的:

> FirstName
>姓氏
>汽车:丰田,红色
>汽车:三菱,格林

有谁知道如何做到这一点?

最佳答案 PropertyDescriptor类提供了一个名为GetChildProperties(System.Object)的方法.

您应该能够将当前对象的引用传递给方法,然后接收包含子属性的另一个集合.

从类中继承以获得完整功能甚至是有意义的.

有关文档,请参见here.

点赞