Module javafx.base
Package javafx.beans.property

## Class ReadOnlyListProperty<E>

- java.lang.Object
- - javafx.beans.binding.ListExpression<E>
  - - javafx.beans.property.ReadOnlyListProperty<E>

- Type Parameters:
    `E` - the type of the `List` elements
  All Implemented Interfaces:
    `Iterable<E>`, `Collection<E>`, `List<E>`, `Observable`, `ReadOnlyProperty<ObservableList<E>>`, `ObservableListValue<E>`, `ObservableObjectValue<ObservableList<E>>`, `ObservableValue<ObservableList<E>>`, `ObservableList<E>`
  Direct Known Subclasses:
    `ListProperty`, `ReadOnlyListPropertyBase`

      public abstract class ReadOnlyListProperty<E>
      extends ListExpression<E>
      implements ReadOnlyProperty<ObservableList<E>>

  Superclass for all readonly properties wrapping an `ObservableList`.
  Since:
    JavaFX 2.1
  See Also:
    `ObservableList`, `ObservableListValue`, `ListExpression`, `ReadOnlyProperty`

- - ### Property Summary

    - ### Properties inherited from class javafx.beans.binding.ListExpression

      `empty, size`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ReadOnlyListProperty()` | The constructor of `ReadOnlyListProperty`.

  - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `bindContent​(ObservableList<E> list)` | Creates a content binding between the `ObservableList`, that is wrapped in this `ReadOnlyListProperty`, and another `ObservableList`.
    `void` | `bindContentBidirectional​(ObservableList<E> list)` | Creates a bidirectional content binding of the `ObservableList`, that is wrapped in this `ReadOnlyListProperty`, and another `ObservableList`.
    `boolean` | `equals​(Object obj)` |
    `int` | `hashCode()` |
    `String` | `toString()` | Returns a string representation of this `ReadOnlyListProperty` object.
    `void` | `unbindContent​(Object object)` | Deletes a content binding between the `ObservableList`, that is wrapped in this `ReadOnlyListProperty`, and another `Object`.
    `void` | `unbindContentBidirectional​(Object object)` | Deletes a bidirectional content binding between the `ObservableList`, that is wrapped in this `ReadOnlyListProperty`, and another `Object`.

    - ### Methods inherited from class javafx.beans.binding.ListExpression

      `add, add, addAll, addAll, addAll, asString, clear, contains, containsAll, emptyProperty, get, getSize, getValue, indexOf, isEmpty, isEqualTo, isNotEqualTo, isNotNull, isNull, iterator, lastIndexOf, listExpression, listIterator, listIterator, remove, remove, remove, removeAll, removeAll, retainAll, retainAll, set, setAll, setAll, size, sizeProperty, subList, toArray, toArray, valueAt, valueAt`

    - ### Methods inherited from class java.lang.Object

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

    - ### Methods inherited from interface java.util.Collection

      `parallelStream, removeIf, stream, toArray`

    - ### Methods inherited from interface java.lang.Iterable

      `forEach`

    - ### Methods inherited from interface java.util.List

      `replaceAll, sort, spliterator`

    - ### Methods inherited from interface javafx.beans.Observable

      `addListener, removeListener`

    - ### Methods inherited from interface javafx.collections.ObservableList

      `addListener, filtered, removeListener, sorted, sorted`

    - ### Methods inherited from interface javafx.beans.value.ObservableObjectValue

      `get`

    - ### Methods inherited from interface javafx.beans.value.ObservableValue

      `addListener, getValue, removeListener`

    - ### Methods inherited from interface javafx.beans.property.ReadOnlyProperty

      `getBean, getName`

- - ### Constructor Detail

    - #### ReadOnlyListProperty

          public ReadOnlyListProperty()

      The constructor of `ReadOnlyListProperty`.

  - ### Method Detail

    - #### bindContentBidirectional

          public void bindContentBidirectional​(ObservableList<E> list)

      Creates a bidirectional content binding of the `ObservableList`, that is wrapped in this `ReadOnlyListProperty`, and another `ObservableList`.

      A bidirectional content binding ensures that the content of two `ObservableLists` is the same. If the content of one of the lists changes, the other one will be updated automatically.

      Parameters:
        `list` - the `ObservableList` this property should be bound to
      Throws:
        `NullPointerException` - if `list` is `null`
        `IllegalArgumentException` - if `list` is the same list that this `ReadOnlyListProperty` points to

    - #### unbindContentBidirectional

          public void unbindContentBidirectional​(Object object)

      Deletes a bidirectional content binding between the `ObservableList`, that is wrapped in this `ReadOnlyListProperty`, and another `Object`.
      Parameters:
        `object` - the `Object` to which the bidirectional binding should be removed
      Throws:
        `NullPointerException` - if `object` is `null`
        `IllegalArgumentException` - if `object` is the same list that this `ReadOnlyListProperty` points to

    - #### bindContent

          public void bindContent​(ObservableList<E> list)

      Creates a content binding between the `ObservableList`, that is wrapped in this `ReadOnlyListProperty`, and another `ObservableList`.

      A content binding ensures that the content of the wrapped `ObservableLists` is the same as that of the other list. If the content of the other list changes, the wrapped list will be updated automatically. Once the wrapped list is bound to another list, you must not change it directly.

      Parameters:
        `list` - the `ObservableList` this property should be bound to
      Throws:
        `NullPointerException` - if `list` is `null`
        `IllegalArgumentException` - if `list` is the same list that this `ReadOnlyListProperty` points to

    - #### unbindContent

          public void unbindContent​(Object object)

      Deletes a content binding between the `ObservableList`, that is wrapped in this `ReadOnlyListProperty`, and another `Object`.
      Parameters:
        `object` - the `Object` to which the binding should be removed
      Throws:
        `NullPointerException` - if `object` is `null`
        `IllegalArgumentException` - if `object` is the same list that this `ReadOnlyListProperty` points to

    - #### equals

          public boolean equals​(Object obj)

      Specified by:
        `equals` in interface `Collection<E>`
      Specified by:
        `equals` in interface `List<E>`
      Overrides:
        `equals` in class `Object`

    - #### hashCode

          public int hashCode()

      Specified by:
        `hashCode` in interface `Collection<E>`
      Specified by:
        `hashCode` in interface `List<E>`
      Overrides:
        `hashCode` in class `Object`

    - #### toString

          public String toString()

      Returns a string representation of this `ReadOnlyListProperty` object.
      Overrides:
        `toString` in class `Object`
      Returns:
        a string representation of this `ReadOnlyListProperty` object.