保留datagridviewcolumn的自定义列表<string>属性</string>

时间:2013-08-30 18:25:33

标签: c# .net datagridview propertygrid designmode

我有一个带有自定义DataGridViewColumn的WinForm应用程序,其中添加了1个属性,一个简单的List<string>。如果需要的话,我可以把它改成任何类型的集合都可以使它工作。我遇到的问题是,当我在Designer中设置属性时,它不会持久存在。当我单击“确定”然后返回到它时,它再次变为空白。我已经做了大量的研究,并尝试了我能找到的所有东西,但它无论如何都会这样做。

最新的尝试如下:

[TypeConverterAttribute(typeof(System.ComponentModel.ExpandableObjectConverter))]
public class MyCustomColumn : DataGridViewComboBoxColumn
{
    [Editor("System.Windows.Forms.Design.StringCollectionEditor,System.Design",
     "System.Drawing.Design.UITypeEditor, System.Drawing")]
    [DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
    [Description("My custom property")]
    public List<string> MyListOfStrings {get;set;}

    public MyCustomColumn()
    {
        this.CellTemplate = new MyCustomCell();
        MyListOfStrings = new List<string>();
    }
}

0 个答案:

没有答案