Module javafx.base

Class JavaBeanStringProperty

All Implemented Interfaces:
Observable, JavaBeanProperty<String>, ReadOnlyJavaBeanProperty<String>, Property<String>, ReadOnlyProperty<String>, ObservableObjectValue<String>, ObservableStringValue, ObservableValue<String>, WritableObjectValue<String>, WritableStringValue, WritableValue<String>

public final class JavaBeanStringProperty
extends StringProperty
implements JavaBeanProperty<String>
A JavaBeanStringProperty provides an adapter between a regular Java Bean property of type String and a JavaFX StringProperty. It cannot be created directly, but a JavaBeanStringPropertyBuilder has to be used.

As a minimum, the Java Bean class must implement a getter and a setter for the property. The class, as well as the getter and a setter methods, must be declared public. If the getter of an instance of this class is called, the property of the Java Bean is returned. If the setter is called, the value will be passed to the Java Bean property. If the Java Bean property is bound (i.e. it supports PropertyChangeListeners), this JavaBeanStringProperty will be aware of changes in the Java Bean. Otherwise it can be notified about changes by calling ReadOnlyJavaBeanProperty.fireValueChangedEvent(). If the Java Bean property is also constrained (i.e. it supports VetoableChangeListeners), this JavaBeanStringProperty will reject changes, if it is bound to an ObservableValue<String>.

Deploying an Application as a Module

If the Java Bean class is in a named module, then it must be reflectively accessible to the javafx.base module. A class is reflectively accessible if the module opens the containing package to at least the javafx.base module.

For example, if is in the module, the might look like this:

module {
    opens to javafx.base;

Alternatively, a class is reflectively accessible if the module exports the containing package unconditionally.

JavaFX 2.1
See Also:
StringProperty, JavaBeanStringPropertyBuilder