JavaFX How to - Create Bidirectional Binding








Question

We would like to know how to create Bidirectional Binding.

Answer

import javafx.beans.property.SimpleStringProperty;
import javafx.beans.property.StringProperty;
/*  w w  w  . ja v  a  2 s .  co m*/
public class Main {
    public static void main(String[] args) {
        StringProperty prop1 = new SimpleStringProperty("");
        StringProperty prop2 = new SimpleStringProperty("");

        prop2.bindBidirectional(prop1);

        System.out.println("prop1.isBound() = " + prop1.isBound());
        System.out.println("prop2.isBound() = " + prop2.isBound());

        prop1.set("asdf");
        System.out.println(prop2.get());

        prop2.set(prop2.get() );
        System.out.println(prop1.get());
    }
}

The code above generates the following result.