是否可以在Windows窗体PropertyGrid
控件中添加/删除属性,具体取决于另一个布尔属性的值?
例如,假设所选对象具有布尔ShowTitle
属性。仅当TitleFont
设置为true时,我才需要显示TitleColor
和ShowTitle
属性。此外,如果TitleFont
和TitleColor
属性是ShowTitle
属性的子级,那就太棒了。
如果无法做到这一点,那么除了创建自定义编辑器之外,我还有哪些其他选项?
更新
根据我的理解,似乎PropertyGrid允许我们这样做......
...但不是这个(图片下面只是一个模型)......
答案 0 :(得分:1)
你可以做的是重新使用我在这个问题的答案中描述的DynamicTypeDescriptor类,在SO:PropertyGrid Browsable not found for entity framework created property, how to find it?
在同一个实用程序类中还有另一个好的基础:Optimize class for PropertyGrid