是否有任何用于双向绑定的JavaFX属性包装器?

时间:2017-11-24 16:57:25

标签: java javafx properties wrapper bidirectional

我正在寻找帮助我映射POJO的功能。我一直在研究JavaBeanStringPropertyBuilder和bean路径

然而,它没有实现我的目标。我想将一个pojo方法包装到JavaFX objectproperty中,以便在双向绑定中使用。

目标是绑定中usagen的属性,因此当用户编辑Xyz时,TextField的实例会针对指定的languageCode进行更新。

public class Xyz {
    private Map<String,String> multilingualTitles = ...;

    public String getTitleFor( String languageCode ) { /* abbreviated */ }
    public void setTitleFor( String languageCode, String title ) { /* abbreviated */ }
}

public void bindtoTextField( Xyz theObject, javafx.scene.control.TextField textField )
{
    final String languageCode = "EN"; // or class field

    /* 
     * Is there something that does what is below?
     */ 
    Property<String> prop = **TheThingIamLookingFor**.create( theObject, 
        (i) -> i.getTitleFor( languageCode ),
        (i,nv) -> i.setTitleFor( languageCode, nv ) )


    textField.textProperty().bindBidirectional( prop );
}

包装器属性(prop)的另一个原因是我想在另一个绑定中重用实例化的属性进行预览和组合绑定

0 个答案:

没有答案