public static <T> void bindBidirectional (Property<T> property1, Property<T> property2)

Generates a bidirectional binding (or "bind with inverse") between two instances of javafx.beans.property.Property.

A bidirectional binding is a binding that works in both directions. If two properties a and b are linked with a bidirectional binding and the value of a changes, b is set to the same value automatically. And vice versa, if b changes, a is set to the same value.

A bidirectional binding can be removed with unbindBidirectional(Property, Property).

Note: this implementation of a bidirectional binding behaves differently from all other bindings here in two important aspects. A property that is linked to another property with a bidirectional binding can still be set (usually bindings would throw an exception). Secondly bidirectional bindings are calculated eagerly, i.e. a bound property is updated immediately.

Parameters:
<T>     the types of the properties
property1     the first Property<T>
property2     the second Property<T>

Exceptions:
NullPointerException     if one of the properties is null
IllegalArgumentException     if both properties are equal