从你的问题和评论中我了解到你正在尝试做类似的事情:
ObservableList<E> list = ...;
ListView<E> view = ...;
view.itemsProperty().bind(list);
Run Code Online (Sandbox Code Playgroud)
这将不起作用,因为bind需要一个接口ObservableValue并且ObservableList不会扩展该接口。不过,您不需要绑定该items属性。ObservableList属性中的任何内容都将通过for 更改(即添加、删除、排列和更新1items )来观察。这意味着你应该做类似的事情:ListView
ObservableList<E> list = ...;
ListView<E> view = ...;
view.setItems(list);
Run Code Online (Sandbox Code Playgroud)
然后对的修改list将反映在ListView.
如果您需要绑定该items属性,那么您的遗嘱ObservableList需要保存在 的实现中ObservableValue<ObservableList<E>>或ObservableListValue<E>.
我建议阅读更多有关 JavaFX 基础知识的内容;例如的教程ListView或文档。
1. 当元素的属性失效时会触发更新更改事件。为了使 anObservableList能够观察其元素的属性,从而能够触发更新事件,必须使用 来创建它FXCollections.observableArrayList(Callback)。
| 归档时间: |
|
| 查看次数: |
6079 次 |
| 最近记录: |