The reason is that you're caching the content of the form for a single cell, and your Person object doesn't have a proper equals/hashCode implementation to keep track of the items. You should add a unique id to Person and reference that in equals/hashCode. Then you should implement observable properties in Person like I talked about earlier, and then move on to a ListCellFragment and use a viewmodel 🙂