C# 设置中的自定义数据类型。设置为类的数组

C# 设置中的自定义数据类型。设置为类的数组,c#,settings.settings,C#,Settings.settings,我在网上搜索,找到了如何在设置中添加特定的自定义数据类型我自己插入数据,而不是程序运行时的代码。我的问题是如何在designer中向combobox添加自定义数据类型。现在我明白了,需要建议,如何添加这种类型的数据类型数组。我将展示一个简单的例子 我有这门课 [Serializable()] public class Product { public string Name { get; set; } public int Price { get; set; } } 在settings.set

我在网上搜索,找到了如何在设置中添加特定的自定义数据类型我自己插入数据,而不是程序运行时的代码。我的问题是如何在designer中向combobox添加自定义数据类型。现在我明白了,需要建议,如何添加这种类型的数据类型数组。我将展示一个简单的例子

我有这门课

[Serializable()]
public class Product
{
public string Name { get; set; }
public int Price { get; set; }
}
在settings.setting中,我有settingproductsettings,键入MyApp.Data.Product,范围应用程序和默认值包含以下内容

<xml definition>
<Product xlmns:xsi=.....>
<Name>Banana</Name>
<Price>1</Price>
</Product>

香蕉
1.
通过这种方式,它工作得很好。但现在,我需要从设置文件中获取产品集合,所以我尝试将类型指定为MyApp.Data.Product[],但不能。设计器弹出窗口并显示“MyApp.Data.Product[]未定义。”。我怎么才能知道呢

谢谢


PF:该项目只是WPF应用程序中使用的类库-如果有问题,请使用System.Collections.Generic.List。或者您可以创建一个从列表继承的类

然后在值中,您将具有以下格式:

<ArrayOfProduct xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd=
"http://www.w3.org/2001/XMLSchema">
  <Product>
    <Name>Banana</Name>
    <Price>1</Price>
  </Product>
</ArrayOfProduct>

香蕉
1.

谢谢您的建议,但VS仍然给我错误消息类型:System.Collections.Generic.List未定义。我不知道出了什么问题。这是我的示例,展示了我是如何做到这一点的:非常好的示例,我很感激,但它在ShowProduct方法中给了我NullPointerException:(幸运的是,您的第二个解决方案解决了我的问题(类派生自List)。VS中的这个设置编辑器真的很蠢,它甚至没有为我添加xml标记,所以我必须自己复制它们。再为这个问题添加一个答案(用我的工作解决方案回答),我会将它标记为好答案->您将获得分数,用户将找到这个问题的工作解决方案;-)再次感谢。