问题: 当对象有:
class A
{
public ISomeinterface PropertyName { get; set; }
}
然后将该类的实例分配给propertyGrid.SelectedObject = new A(); 然后在尝试编辑PropertyName的值时,会显示一个关于无法生成ISomeinterface实例的异常(理所当然),问题是如何在不破坏我的类和接口的情况下解决此问题。?
答案 0 :(得分:1)
对,PropertyGrid没有猜测如何分配值的希望。所以,隐藏它:
class A
{
[Browsable(false)]
public ISomeinterface PropertyName { get; set; }
}
如果要求属性赋值,那么您需要为该属性实现UITypeEditor。