c# - TypeDescriptor 和子元素

标签 c# list propertydescriptor

这段代码:

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/

相关文章:

c# - 是否有使用属性的 .NET 参数验证标准框架?

javascript - 检测第一个 ul 元素并在内部更改 li 或使用 jquery .html() 创建新的 li

r - 如何从两个列表中获取每个组合?

c# - PropertyGrid 可扩展集合

c# - 事件源与事件提供者

c# - 求解方程从3个点找到圆心

c# - 来自其 PropertyDescriptor 的 DataRow 的 PropertyInfo

c# - 获取类型的默认 PropertyDescriptors

用于简单聊天的 C# TCP 服务器

python - 根据 bool 值列表过滤列表