如何从自定义编辑器更新PropertyGrid?

时间:2012-12-15 15:25:46

标签: .net propertygrid uitypeeditor

我正在使用PropertyGrid(在CollectionEditor中)编辑类的某些属性。这些属性实际上包含在实现ICustomTypeDescriptor的类中。其中一个使用继承自UITypeEditor的自定义编辑器。当用户在自定义编辑器中更改此属性的值时,另一个属性的值也将被更新(通过自定义编辑器中的代码;由于此原因,属性包装器具有对其他属性的引用)。到目前为止一切都很好。

但是当用户关闭自定义编辑器时,PropertyGrid仅显示已编辑属性的新值,并且不刷新其他属性(即使其值已明确更改)。

如何从自定义编辑器刷新整个PropertyGrid

1 个答案:

答案 0 :(得分:1)

我自己找到了解决方案:

自定义编辑器的EditValue方法应该返回一个新对象,而不是传入的值对象。然后PropertyGrid也会自动刷新其他属性。

我不需要在任何地方使用RefreshProperties属性。