使用ExpandableObjectConverter TypeConverter的ReadOnly属性在PropertyGird中不显示为ReadOnly

时间:2017-11-02 20:40:38

标签: windows vb.net readonly propertygrid

Windows PropertyGrid在propertygrid中将readonly属性显示为ReadOnly。具体来说,属性值为灰色而不是黑色,无法在propertygrid中进行编辑。这是Windows PropertyGrid控件的标准行为。

我遇到的问题是,当我将一个ExpandableObjectConverter类型转换器添加到readonly属性时,它不再遵循此行为。当转换器展开以显示属性的子属性时,所有子属性都显示为黑色并且可以编辑。这是不正确的行为,因为如果属性是只读的,那么根据定义,它的所有子属性也应该是只读的。

这是propertygrid控件中的错误吗?如果PropertyGrid控件没有像我期望的那样处理这种情况,那么我可以做些什么来强制它拥有我想要的行为,这是:

  1. 如果父属性是只读的,那么所有子属性都是只读的。
  2. 展开后,readonly属性的所有子属性都应显示为灰色,用户应该无法编辑它们。

0 个答案:

没有答案