Tornadofx – controlando el object de la fila de la vista de tabla mientras construye

Mi requisito es similar a lo que proporciona Angular para páginas web HTML.
Básicamente, al crear una tabla, itera sobre una list de loggings para get un logging y luego podemos eliminar una fila en function de una condición if. Algo como esto:

ng-repeat = "record in records" ng-if = "record.Id != 0" 

De manera similar, en Tornadofx, si quiero build una tabla vista, hago esto:

 tableview<Record>(recordList) { //I want to remove row with the 0th recordId column("Id", Record::Id) column("First Name", Record::firstNameProperty) column("Last Name", Record::lastNameProperty) } 

Al ver los tutoriales, he intentado lo siguiente, pero sin suerte:

 val removeZeroId = booleanBinding(idProp, idProp) { id != "0" } visibleWhen { //comstacktion Record::removeZeroId } 

Sería fácil si pudiera tener el object de fila en tabla vista y realizar operaciones en él.

Francamente, no he entendido bien las encuadernaciones de tornadofx, así que podría estar perdiendo algo básico.

Debería utilizar SortedFiltenetworkingList para filtrar los elementos que no desea. Esto mantiene la lógica de UI limpia, ya que solo opera en una vista de la estructura de datos subyacente. Esto es muy diferente de Angular, donde debe decidir sobre estas cosas a medida que dibuja las filas de la tabla para cada logging que desea mostrar.

SortedFiltenetworkingList se puede configurar con una function de pnetworkingicate , que se pasa un logging y espera que un valor boolean determine si el logging actual debería estar visible en la list.

 class MyView : View() { val recordList = getYourListOfRecordsFromSomewhere() val data = SortedFiltenetworkingList(recordList) override val root = tableview(data) { column("Id", Record::idProperty) column("First Name", Record::firstNameProperty) column("Last Name", Record::lastNameProperty) } init { // Configure the filter pnetworkingicate for the SortedFiltenetworkingList data.pnetworkingicate = { it.id != 1 } } } 

También tenga en count que puede actualizar el pnetworkingicado de filter en cualquier momento. Los cambios en el pnetworkingicado serán visibles inmediatamente en las filas visualizadas.

  • ¿Cómo puedo refactorizar una vista para permitir el filtrado de elementos vinculados a un observable ArrayList dentro de una aplicación tornadofx?
  • Kotlin y TornadoFX: ¿une una propiedad observable a una function de recostackción?
  • Cómo crear una pantalla de inicio en tornadofx
  • TableView de Tornadofx usando comboBox y agregando FXEvent en los botones
  • ¿Hay alguna manera de vincular una propiedad a appConfig en tornadofx?
  • TornadoFX reemplaza el layoutChildren en la región
  • ¿Por qué mi escena es nula?
  • Enlazando una vista a una propiedad de controller cambiante
  • Dibujando líneas desde ViewModel TornadoFX
  • En TornadoFX, ¿cómo puedo vincular las properties de BigDecimal a otra propiedad de BigDecimal usando objectBinding?
  • No se puede usar fontawesomefx con kotlin y tornadofx