Средство задания свойств не вызывается с помощью CollectionEditor

У меня есть настраиваемый элемент управления со свойством Items . Я применил EditorAttribute) с UITypeEditor типа CollectionEditor .

Тип коллекции:

[Serializable]
[Editor(typeof(CollectionEditor), typeof(UITypeEditor))]
public class ListItemsCollection : CollectionBase
{
    // methods
}

Объявление свойства в элементе управления:

private new ListItemsCollection _Items;

[Editor(typeof(CollectionEditor), typeof(UITypeEditor))]
public new ListItemsCollection Items
{
    get
    {
        return _Items;
    }
    set
    {
        _Items = value;

        // do other UI changes
    }
}

Проблема:
Когда я перетаскиваю этот элемент управления на поверхность конструктора, я могу добавлять элементы в свойство Items с помощью PropertyGrid . Но когда я нажимаю кнопку Ok редактора CollectionEditor , средство установки свойства Items не вызывается.

AFAIK, когда значение возвращается из метода EditValue класса UITypeEditor , предполагается, что будет вызван блок установки свойства.

Это сводит меня с ума. Я даже попытался добавить Event в ListItemsCollection , чтобы при добавлении элементов я мог все, что захочу, с пользовательским интерфейсом элемента управления.

Это не должно быть сложно. Что я делаю не так?

1
задан Zuhaib 20 September 2010 в 12:15
поделиться