我创建了一个自定义 UITypeEditor。
我是否可以插入一个属性,该属性也将 TypeConverter 附加到我的属性insideUITypeEditor 类?
我已经尝试过以下操作,但无论我如何扭转和转动它,都没有任何反应:
Attribute[] newAttributes = new Attribute[1];
newAttributes[0] = new TypeConverterAttribute(typeof(BooleanConverter));
现在,上面需要以某种方式附加以下内容:
TypeDescriptor.AddAttributes(context.Instance.PROPERTYNAME, newAttributes);
...但首先我不知道如何以通用方式访问有问题的属性,并且我尝试的所有代码都失败了。即使我尝试以这种方式全局分配 TypeConverter,它也会失败。 (不过,将其设置为属性本身的属性是可行的,只是为了排除该部分中的错误。)
TypeDescriptor
允许您添加属性(至少,就System.ComponentModel
关心)到types and objects- 但不涉及特定属性。为此(一般来说需要TypeDescriptionProvider
- 但是,请注意,这不是一件容易实现的事情,您需要编写以下所有内容:
- 提供者本身
- an
ICustomTypeDescriptor
- a
PropertyDescriptor
对于你想要操纵的东西
它是PropertyDescriptor
这将允许你假装你有额外的属性(或者,通过override
改变Converter
更直接,不会弄乱属性)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)