Привязка свойства bean-компонента к TextField в GXT 3.0

Я работаю над приложением ExtGWT 3.0 (бета).

У меня есть простой Java-бин, содержащий одно свойство:

public class MyBean {
    private String content;

    // getter and setter here...
}

Я хочу привязать свойство к TextField.

Я создал интерфейс:

interface MyBeanProperties extends PropertyAccess<MyBean> {
    ValueProvider<MyBean, String> content();
}

Но что дальше? Как указать TextField привязываться к этому конкретному свойству конкретного объекта MyBean?


person tobiasbayer    schedule 22.02.2012    source источник


Ответы (1)


PropertyAccess используется для общего обозначения свойств объектов, часто для виджетов данных, которые используют Store, таких как сетка или диаграммы. Для привязки формы к bean-компоненту ознакомьтесь с фреймворком редактора GWT по адресу http://code.google.com/webtoolkit/doc/latest/DevGuideUiEditors.html. Есть несколько примеров для этого с GXT на http://www.sencha.com/examples/#ExamplePlace:basicbinding%28uibinder%29

Грубо говоря, вы создадите виджет формы, который содержит все необходимые вам свойства, и создадите драйвер редактора для этого редактора и его bean-компонента:

public class MyBeanEditor implements Editor<MyBean> {

  // do any kind of widget setup you like, just make sure to have methods/fields
  // package protected or higher that extends Editor (Field extends Editor)

  TextField content;
}

//... declare the driver
interface Driver extends SimpleBeanEditorDriver<MyBean, MyBeanEditor> {}

//... use the driver to bind a form to a bean
Driver driver = GWT.create(Driver.class);
driver.initialize(myBeanEditorInstance);
driver.edit(myBean);

//... when save is clicked (or a timer, or whatever), get the value and do 
//    something with it
MyBean model = driver.flush();
person Colin Alworth    schedule 22.02.2012
comment
Ссылка sencha.com/examples-dev/ не работает, должно ли оно быть sencha.com/examples/#ExamplePlace:basicbinding? - person rjdkolb; 22.05.2015