@carlw I'm at the heart of the problem now. When a cell is created, a fragment is created as well. Later, that cell might not be used to display a value, but we still have bindings towards the item properties. If the item represented by the cell/fragment is then later displayed in another cell/fragment and for example the completed state is changed, both fragments will fire events, because they are observing the same data. Since we cannot know when JavaFX is no longer using a cell, we don't know when we should "unbind" from the data. One solution is the "one-node-hierarchy-per-item" but it is resource consuming, so we don't want that. Thinking about solutions now.