public DisposableNode createNode(final PropertyElementController<T> controller) {
final TextField textBox = new TextField();
final ChangeListener textBoxListener = createTextBoxListener(controller, textBox);
textBox.textProperty().addListener(textBoxListener);
if (controller.getValue() != null) {
textBox.textProperty().setValue(formatProvider.getFormat(controller.getElement()).format(controller.getValue()));
}
final ChangeListener controllerListener = createControllerListener(textBox, controller);
controller.addListener(controllerListener);
return new DisposableNodeWrapper(textBox, new Callback<Node, Void>() {
public Void call(Node node) {