我认为这里的问题是Person确实是POJO,但不是JavaBean:它缺少PropertyChangeListeners的钩子。Java不会神奇地知道Person#name何时更改。相反,JavaFX适配器将寻找一种添加PropertyChangeListener并侦听名为“
name”的属性的事件的方法。如果将PropertyChangeSupport实例添加到Person类,它将按预期工作:
public class Person { private String name; private PropertyChangeSupport _changeSupport; public Person() { _changeSupport = new PropertyChangeSupport(this); } public String getName() { return name; } public void setName( String name ) { final String prev = this.name; this.name = name; _changeSupport.firePropertyChange("name", prev, name); } public void addPropertyChangeListener(final PropertyChangeListener listener) { _changeSupport.addPropertyChangeListener(listener); }}


