devexpress如何使用PropertyGridControl编辑字典(Dictionary)

引言

PropertyGridControl默认使用PropertyGrid的集合编辑器,对于一个Dictionary对象是不能添加和删除的

如下图所示:

image-20210924163519947

要想实现添加/删除功能,需要继承UITypeEditor实现一个自定义编辑器

解决方案

Google之后发现已经有人实现了这一功能:GenericDictUiTypeEditor

由于PropertyGridControl继承自PropertyGrid,因此PropertyGridControl的大部分需求可参照PropertyGrid实现

参考Github为项目添加Nuget引用然后使用EditorAttribute(typeof(GenericDictionaryEditor<string,string>), typeof(System.Drawing.Design.UITypeEditor))即有增删功能

image-20210924165415825

参考资料


devexpress如何使用PropertyGridControl编辑字典(Dictionary)
http://blog.wangshuai.app/2021-09-24-devexpress如何使用PropertyGridControl编辑字典(Dictionary)/
作者
王帅
发布于
2021年9月24日
许可协议