在PropertyGrid中创建自定义对象列表集合

时间:2014-08-09 17:17:27

标签: c# .net list json.net propertygrid

默认情况下,使用以下内容时:

List<myClass> l = new List<myClass>();

这将显示集合编辑器,并且您添加的每个项目都将显示该类的属性。

因为我从JSON文件中提取数据,所以我需要解决这个问题而不是创建类,假设我的JSON文件如下:

{
    "name": "Pages",
    "type": "collection",
    "properties": [
        {
            "name": "Text",
            "value": "page1"
        },
        {
            "name": "Name",
            "value": "page1"
        },
        {
            "name": "BackgroundColor",
            "value": "black"
        }           
    ],
    "items": [
        {
            "Text": "page1",
            "Name": "page1",
            "BackgroundColor": "black"
        },
        {
            "Text": "page2",
            "Name": "page2",
            "BackgroundColor": "blue"
        }
    ]
}

我不确定如何在不创建课程的情况下这样做,我们将不胜感激。

我的猜测是以某种方式动态创建一个基于JSON文件的类,然后以某种方式从中创建一个列表。

我一直试图想出一个解决方案好几天,但无法绕过它。

我的另一个想法是创建一个对象列表,如下所示:

List<object> l = new List<object>();

然后以某种方式修改集合编辑器中的“添加”按钮事件以显示自定义属性。

0 个答案:

没有答案