默认情况下,PropertyGrid仅允许使用公共设置器编辑属性。我想允许在不使用setter的情况下编辑属性。
例如:
class A {
public int X;
public int Y {get;}
}
在上面的示例中,只有X是可编辑的。将显示Y,但显示为灰色。如何使Y可编辑?
注意:建立一个私人支持字段就可以了。例如:
class A {
public int X;
private int y;
public int Y {get => y; }
}
如何使用
PropertyGrid
允许在没有设置器的情况下编辑属性?
通常,您不设置属性,除非它具有设置器或支持字段,对于PropertyGrid
,它需要settable和getable物业
或者您可以通过创建一个wrapper类来over-bake,该类具有您所有的[[properties,并将reference带到您的类中,并通过一个backing property或reflection。
老实说,只需添加一个二传手并完成它。