父级的 JFace 数据绑定绑定字段 class
JFace databinding bind field of parent class
我在父 class 上的数据绑定有一点问题。
这是结构:
class Instrument{
//some more fields
private Entity e;
}
class Equity extends Instrument{
//some fields (not someField)
}
class Entity{
private String someField;
}
我想调用PropertyDescriptor descriptor = PropertyUtils.getPropertyDescriptor(model.getValue(), propertyName);
,其中model.getValue()
returns一个Equity
类型的对象,propertyName
指定字段名(Instrument.e
).
我尝试了各种不同的方法,例如:
super.e.someField
e.someField
instrument.e.someField
someField
除了最后一个
之外,所有方法都失败了
java.lang.NoSuchMethodException: Unknown property 'someField' on class 'class Equity'
即使它没有抛出该异常,它也不会设置任何值,即使有一个也是如此。
所以我的问题是,如何从 Equity
向 Instrument.e.someField
上的控件添加数据绑定?
原来我是个笨蛋。我忘记为 Instrument
class 中的 private Entity e;
创建 getter 和 setter。一旦我添加了这些,它就可以很好地与 e.someField
我在父 class 上的数据绑定有一点问题。
这是结构:
class Instrument{
//some more fields
private Entity e;
}
class Equity extends Instrument{
//some fields (not someField)
}
class Entity{
private String someField;
}
我想调用PropertyDescriptor descriptor = PropertyUtils.getPropertyDescriptor(model.getValue(), propertyName);
,其中model.getValue()
returns一个Equity
类型的对象,propertyName
指定字段名(Instrument.e
).
我尝试了各种不同的方法,例如:
super.e.someField
e.someField
instrument.e.someField
someField
除了最后一个
之外,所有方法都失败了java.lang.NoSuchMethodException: Unknown property 'someField' on class 'class Equity'
即使它没有抛出该异常,它也不会设置任何值,即使有一个也是如此。
所以我的问题是,如何从 Equity
向 Instrument.e.someField
上的控件添加数据绑定?
原来我是个笨蛋。我忘记为 Instrument
class 中的 private Entity e;
创建 getter 和 setter。一旦我添加了这些,它就可以很好地与 e.someField