我有一个类Market
,其中包含一个MarketUpdate
名为m_updates
. 对于 UI,我使用类型安全构建器在 tableview 中创建列,如下所示:
override val root = tableview<Market> {
val sortedMarketList = SortedList<Market>(markets)
sortedMarketList.comparatorProperty().bind(this.comparatorProperty())
items = sortedMarketList
...
column("Strikes", Market::m_strikes)
...
该m_strikes
属性只是对象直接拥有的 SimpleIntegerProperty Market
。但是,我需要能够构建这样的列:
...
column("Created At", Market::m_updates::first::m_time)
...
...
column("Last Update", Market::m_updates::last::m_time)
...
m_time
对象拥有的 SimpleLongProperty在哪里MarketUpdate
。更新对象时Market
,会将新MarketUpdate
对象添加到m_updates
集合的末尾。这意味着绑定需要自动从一个对象转换到另一个对象,并且需要通知 tableview 并更新自身以反映新对象中的数据。我认为通过上述集合的first()
andlast()
函数进行绑定以非常简单的方式捕获了这个想法,但它不会编译。
有许多属性,如m_strikes
和m_time
。我怎样才能优雅地做到这一点?