在WPF UserControl中定义List <string>属性</string>

时间:2012-08-03 09:04:24

标签: wpf user-controls attributes

我创建了一个UserControl,它有几个属性。当我将用户控件添加到WPF应用程序时,它将在Visual Studio属性窗口中显示这些属性。

但我有一个名为UserList的属性,它是List<String>类型。该属性也显示在属性窗口中,带有提示文本“(集合)”和带有三个点的按钮。当我单击该按钮时,它将显示一个对话框,可以向UserList变量添加一些值。但是窗口的那部分没有启用。

那么如何启用该部分呢?我必须为UserList财产做些什么特别的事情吗?

这是我的属性定义的样子:

    private List<String> dataSources = new List<String>();
    [Description("Users"), Category("Time Line")]
    public List<string> UserList
    {
        get { return dataSources; }
        set { dataSources = value; }
    }

1 个答案:

答案 0 :(得分:0)

我找到了一个解决方案,但我认为这种方法不适用于列表。但无论如何,Collection可以转换为List

private Collection<String> dataSources = new Collection<String>();
[Description("Data Sources"), Category("Time Line")]
[DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
public Collection<DataSourceModel> DataSources
{    
    get { return dataSources; }
    set { dataSources = value; }
}