感叹,另一个PropertyGrid问题。我以为我可以解决这个问题,直到遇到一个我无法避免的问题。
我有一个布尔属性,有时需要只读,有时需要更改,具体取决于从TreeView中选择的对象。
我的问题是如何动态更改属性的ReadOnlyAttribute?显然,创建一个布尔变量然后尝试将其设置为ReadOnlyAttribute(boolVar)是行不通的,而现在我已经失去了主意。
我能想到的唯一解决方案是为可写此属性的项目创建单独的,几乎相同的类,并为只读属性创建一个类,但这对我来说似乎很模糊。
救命? :)
最佳答案
我要做的是创建一个具有受保护版本属性的基类,然后创建两个继承该基类的类,这些基类具有只读位和非只读位。