Вы должны установить UpdateValueStrategy
из POLICY_CONVERT
или POLICY_ON_REQUEST
для привязки, чтобы «задерживать» обновления модели:
DataBindingContext dbc = new DataBindingContext();
final Binding binding = dbc.bindValue(target, model,
new UpdateValueStrategy(UpdateValueStrategy.POLICY_CONVERT), null);
Затем вы можете обновить цель с помощью кнопки ОК следующим образом:
Button btnOK = mToolkit.createButton(parent, "OK", SWT.NONE);
btnOK.addSelectionListener(new SelectionAdapter()
{
@Override
public void widgetSelected(SelectionEvent e)
{
binding.updateModelToTarget();
}
});
Или вы можете обновить все привязки в DataBindingContext
, позвонив по номеру DataBindingContext.updateTargets()