Как принудительно использовать пользовательский UITypeEditor для типов систем

У меня есть пользовательский UITypeEditor, который используется для выбора цвета в моей программе с использованием таблицы свойств, но я не могу заставить ее активироваться, если я просто выставляю system.drawing.color. Мне нужно обернуть цвет CustomType, прежде чем он вызовет мой UITypeEditor.

Обратите внимание на свойствоЦвет оно работает.Цвет не делает.

Когда я открываю propertyGrid, я вижуGetEditStyle вызывается с помощью обоих методов, но когда дело доходит доEditValue он вызывается только при выборе TheColour в сетке свойств. Раскрывающийся список Нормальный цвет отображается при выборе свойства цвета

Что мне не хватает?

<CategoryAttribute("Order Colour"), _
 Browsable(True), _
 DisplayName("The Colour"), _
 Description("The background colour for orders from this terminal"), _
EditorAttribute(GetType(IKMDependency.ColourSelectorEditor), _ 
GetType(System.Drawing.Design.UITypeEditor))> _
Public Property TheColour() As MyColour
    Get
        Return mMyColor
    End Get
    Set(ByVal value As MyColour)
        If value.Colour <> mMyColor.Colour Then
            mColor = value.Colour
            mMyColor = value
            mIsDirty = True
        End If
    End Set
End Property

<CategoryAttribute("Order Colour"), _
 Browsable(True), _
 DisplayName("Colour"), _
 Description("The background colour for orders from this terminal"), _
EditorAttribute(GetType(IKMDependency.ColourSelectorEditor), _ 
GetType(System.Drawing.Design.UITypeEditor))> _
Public Property Colour() As Color
    Get
        Return mColor
    End Get
    Set(ByVal value As Color)
        If mColor <> value Then
            mColor = value
            mMyColor = New MyColour(mColor)
            mIsDirty = True
        End If
    End Set
End Property

Ответы на вопрос(2)

Ваш ответ на вопрос