在VS2010集合编辑器中编辑字符串集合

时间:2011-08-11 07:18:03

标签: string visual-studio-2010 collections editor

由于我所有的疑虑都习惯于在这里消失...... :)我还有另外一个问题。

我有一个自定义控件,其中我有一个字符串List列表,我希望我的控件的用户能够在属性编辑器中编辑列表,但我不工作..我可以点击用于使集合编辑器可见的按钮,但未启用添加键,并且显示消息“属性编辑不可用”。

我做了一个自定义的快速和脏的课程

    public class DataUrl
{
    public string Url {get; set;}
    public DataUrl() { }
    public override string ToString()
    {
        return Url.ToString();
    }
}

并且它有效但它的...... 我怀疑它不起作用,因为string(或String)没有无参数构造函数。我也尝试使用属性

[NewItemTypesAttribute(typeof(string))]

但一文不值.. 有人能帮助我吗?

1 个答案:

答案 0 :(得分:0)

 public class DataUrl : Component 
 {
      private readonly List<string> _urlList = new List<string>();

      public DataUrl() : base() {}

      public DataUrl(IContainer container) : base()
      {
         container.Add(this);

         InitializeComponent();
      }

      [Editor("System.Windows.Forms.Design.StringCollectionEditor, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", typeof(System.Drawing.Design.UITypeEditor))]
      [DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]        
      public List<string> UrlList { get { return _urlList; } }          

      public override string ToString()
      {
         return Url.ToString();
      }
}