0
我有一个罕见的用例,其中swing-view的生命期比相关的presentation-model更长:swing-view只要应用程序存在,每次在应用程序中启动新的“运行”时,将更换演示文稿模型。如何从JGoodies-Binding(2.9.0)解除绑定绑定(2.9.0)
的演示模型是一个常规的bean:
@Bindable
static class MyPresentationModel{
String myText = 'default-text'
}
摆动的观点是一个JTextField,使用JGoodies数据BeanAdapter则势必:
JTextField myTextField = new JTextField()
MyPresentationModel pm = new MyPresentationModel()
BeanAdapter<MyPresentationModel> beanAdapter = new BeanAdapter<MyPresentationModel>(pm, true)
Bindings.bind(myTextField , beanAdapter.getValueModel('myText'))
我怎样才能解除绑定演示模型事后从JTextField?
在方向I上的JGoodies-绑定API中发现的唯一的事情就是
beanAdapter.setBean(null)
但这并不 - 当然 - 删除的JGoodies-的PropertyChangeListener和JGoodies数据-的DocumentListener从JTextField中。有没有一个很好的方法来删除这些?还是我自己破解它?
假设你已经有了一个BeanAdapter则的结合,我已经使用'beanAdapter.release()',使有限的成功了' BeanAdapter'实例删除所有通过bean适配器注册的'PropertyChangeListeners'。但正如我所说的,成功是有限的,它很大程度上取决于你的bean,bean适配器和ui组件如何连接在一起。 – tones