今天就跟大家聊聊有关如何使用DefaultEditors属性网格自定义编辑器,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
遇到的问题
当使用DefaultEditors属性将类型的自定义编辑器添加到PropertyGrid时,除非该类型具有EditorAttribute(编辑器的实际类型似乎无关紧要),否则将禁用该编辑器。
在DevExpress版本18.1中,使用Color扩展ColorEditor正常工作;但在v19.2中,禁用了CustomColor的编辑器,启用了CustomColorAttr的编辑器。
解决方案
官方技术团队修复此错误后并更改了操作: PropertyGridControl - The Readonly attribute does not work with a custom editor。在之前没有考虑标准的DescriptorContext.IsValueEditable方法,这导致了错误的结果,现在在代码中正确使用此方法。
如果尝试将对象分配给标准PropertyGrid,则由于DescriptorContext.IsValueEditable方法返回false,因此将获得相同的结果。 反过来,此方法返回false,因为用于自定义类的类型转换器无法将字符串值转换为您的类型。 ColorEditor使用可以执行此类转换的ColorConverter。
因此,要启用对自定义类的编辑,您需要应用支持从字符串值到类型转换的类型转换器。
看完上述内容,你们对如何使用DefaultEditors属性网格自定义编辑器有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。