Groups | Blog | Home
all groups > asp.net building controls > april 2007 >

asp.net building controls : CollectionEditor_-_Add/Remove_buttons_are_disabled


Dmitry Nogin
4/27/2007 9:17:10 PM
Hi,

Could you please suggest me some changes?

I've got the following code, which represents the small component with =
collection property:

class Test : Component

{

private BindingList<Item> items =3D new BindingList<Item>();

=20

[Editor(typeof(CollectionEditor), typeof(UITypeEditor)),

=
DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]=


public IList<Item> Items

{

get { return items; }

}

}

=20

class Item

{

private string name;

public string Name

{

get { return name; }

set { name =3D value; }

}

}

=20

Unfortunately, Add and Remove button in CollectionEditor popup dialog =
are disabled. Why? =20

I tried to inherit from Collection Editor and use the following editor:

public class ItemCollectionEditor : CollectionEditor

{

public ItemCollectionEditor(Type type)

: base(type)

{

}

=20

protected override Type CreateCollectionItemType()

{

return typeof(Item);

}

}

=20

It didn't change anything? What's wrong about this snippet?

ClayB
4/28/2007 1:46:48 AM
Your code worked for me when I changed

public IList<Item> Items
{
get { return items; }
}

to

public BindingList<Item> Items
{
get { return items; }
}

Maybe the CollectionEditor knows it can add and remove from
BindingList<> depending upon AllowNew and AllowRemove settings, but it
does not know how to do this for IList<>.

================
Clay Burch
Syncfusion, Inc.
AddThis Social Bookmark Button