如何在Visual Studio C#中正确公开List属性?

我已经为我制作的自定义窗体创建了一个属性.

private List<object> values;

public List<object> Values
{
    get
    {
       return values;
    }
    set
    {
       values = value;
    }
}

它出现在设计师的属性窗口就好了.我转到属性值字段和“…”三个点显示的按钮.我点击按钮,然后出现允许我向列表中添加项目的窗口.我添加它们并单击确定.没有出现错误,但物品尚未保存.

我的问题是如何正确设置它,以便我可以设置List< object>在设计中属性窗口中的项目?

最佳答案 在Form1.Designer.cs中,手动实例化List,就像这样

this.Values = new List<object>();

添加项目后,将按照正常情况重新创建Form1.Designer.cs文件,但上面的行将被替换为

this.Values = ((System.Collections.Generic.List<object>)(resources.GetObject("$this.Values")));

或者,在声明时实例化列表.

private List<object> values = new List<object>();

public List<object> Values
{
    get
    {
        return values;
    }
    set
    {
        values = value;
    }
 }
点赞