StringProperty (JavaFX 17)

Module javafx.base
Package javafx.beans.property

## Class StringProperty

- java.lang.Object
- - javafx.beans.binding.StringExpression
  - - javafx.beans.property.ReadOnlyStringProperty
    - - javafx.beans.property.StringProperty

- All Implemented Interfaces:
    `Observable`, `Property<String>`, `ReadOnlyProperty<String>`, `ObservableObjectValue<String>`, `ObservableStringValue`, `ObservableValue<String>`, `WritableObjectValue<String>`, `WritableStringValue`, `WritableValue<String>`
  Direct Known Subclasses:
    `JavaBeanStringProperty`, `StringPropertyBase`

      public abstract class StringProperty
      extends ReadOnlyStringProperty
      implements Property<String>, WritableStringValue

  This class provides a full implementation of a `Property` wrapping a `String` value. The value of a `StringProperty` can be get and set with `ObservableObjectValue.get()`, `ObservableValue.getValue()`, `WritableObjectValue.set(Object)`, and `WritableValue.setValue(String)`. A property can be bound and unbound unidirectional with `Property.bind(ObservableValue)` and `Property.unbind()`. Bidirectional bindings can be created and removed with `Property.bindBidirectional(Property)` and `Property.unbindBidirectional(Property)`. The context of a `StringProperty` can be read with `ReadOnlyProperty.getBean()` and `ReadOnlyProperty.getName()`.
  Since:
    JavaFX 2.0
  See Also:
    `ObservableStringValue`, `WritableStringValue`, `ReadOnlyStringProperty`, `Property`

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `StringProperty()` | Creates a default `StringProperty`.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `bindBidirectional​(Property<?> other, Format format)` | Create a bidirectional binding between this `StringProperty` and another arbitrary property.
    `<T> void` | `bindBidirectional​(Property<T> other, StringConverter<T> converter)` | Create a bidirectional binding between this `StringProperty` and another arbitrary property.
    `String` | `toString()` | Returns a string representation of this `StringProperty` object.
    `void` | `unbindBidirectional​(Object other)` | Remove a bidirectional binding between this `Property` and another one.

    - ### Methods declared in class javafx.beans.binding.StringExpression

      `concat, getValueSafe, greaterThan, greaterThan, greaterThanOrEqualTo, greaterThanOrEqualTo, isEmpty, isEqualTo, isEqualTo, isEqualToIgnoreCase, isEqualToIgnoreCase, isNotEmpty, isNotEqualTo, isNotEqualTo, isNotEqualToIgnoreCase, isNotEqualToIgnoreCase, isNotNull, isNull, length, lessThan, lessThan, lessThanOrEqualTo, lessThanOrEqualTo, stringExpression`

    - ### Methods declared in class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### Methods declared in interface javafx.beans.Observable

      `addListener, removeListener`

    - ### Methods declared in interface javafx.beans.value.ObservableObjectValue

      `get`

    - ### Methods declared in interface javafx.beans.value.ObservableValue

      `addListener, getValue, removeListener`

    - ### Methods declared in interface javafx.beans.property.Property

      `bind, bindBidirectional, isBound, unbind, unbindBidirectional`

    - ### Methods declared in interface javafx.beans.property.ReadOnlyProperty

      `getBean, getName`

    - ### Methods declared in interface javafx.beans.value.WritableObjectValue

      `get, set`

    - ### Methods declared in interface javafx.beans.value.WritableValue

      `getValue, setValue`

- - ### Constructor Detail

    - #### StringProperty

          public StringProperty()

      Creates a default `StringProperty`.

  - ### Method Detail

    - #### bindBidirectional

          public void bindBidirectional​(Property<?> other,
                                        Format format)

      Create a bidirectional binding between this `StringProperty` and another arbitrary property. Relies on an implementation of `Format` for conversion.
      Parameters:
        `other` - the other `Property`
        `format` - the `Format` used to convert between this `StringProperty` and the other `Property`
      Throws:
        `NullPointerException` - if `other` or `format` is `null`
        `IllegalArgumentException` - if `other` is `this`
      Since:
        JavaFX 2.1

    - #### bindBidirectional

          public <T> void bindBidirectional​(Property<T> other,
                                            StringConverter<T> converter)

      Create a bidirectional binding between this `StringProperty` and another arbitrary property. Relies on an implementation of `StringConverter` for conversion.
      Type Parameters:
        `T` - the type of the wrapped `Object`
      Parameters:
        `other` - the other `Property`
        `converter` - the `StringConverter` used to convert between this `StringProperty` and the other `Property`
      Throws:
        `NullPointerException` - if `other` or `converter` is `null`
        `IllegalArgumentException` - if `other` is `this`
      Since:
        JavaFX 2.1

    - #### unbindBidirectional

          public void unbindBidirectional​(Object other)

      Remove a bidirectional binding between this `Property` and another one. If no bidirectional binding between the properties exists, calling this method has no effect.
      Parameters:
        `other` - the other `Property`
      Throws:
        `NullPointerException` - if `other` is `null`
        `IllegalArgumentException` - if `other` is `this`
      Since:
        JavaFX 2.1

    - #### toString

          public String toString()

      Returns a string representation of this `StringProperty` object.
      Overrides:
        `toString` in class `ReadOnlyStringProperty`
      Returns:
        a string representation of this `StringProperty` object.