【发布时间】:2013-09-26 15:58:04
【问题描述】:
我在 GUI 项目中使用的库中定义了一个类 Foo。 GUI 项目允许在 System.Windows.Forms.PropertyGrid 的帮助下对 Foo 的实例进行图形编辑。
为了使编辑PropertyGrid 中的类Foo 的实例更舒适,我必须为Foo 的属性设置几个属性,例如Browsable。
但是,我不想在 Foo 中设置这些属性,因为它所在的库应该只有在代码中(而不是在 GUI 中)使用 Foo 所需的东西。
如何获得PropertyGrid 友好版本的 Foo?
我已经尝试过从它继承(将其命名为 FooDesignable)并使用所需的属性隐藏它的属性。然而,这并没有奏效很长时间,直到我发现 Foo 正在使用库项目的其他自定义类,然后我也不得不对其进行隐藏,并更改 Foo 中的现有属性以返回 XxxDesignable 类型。
我是不是走投无路了?还是我只是想不好?
【问题讨论】:
标签: c# winforms propertygrid