我有一个组合框。当我单击一个链接时,它会打开一个弹出窗口,其中包括一个组合框(从数据库加载数据)。它总是保留第一次调用的数据(它不刷新)。
如何更新?
VerticalPanel vp = new VerticalPanel();
vp.setSpacing(10);
ListStore<State> states = new ListStore<State>();
states.add(getStates());
ComboBox<State> combo = new ComboBox<State>();
combo.setEmptyText("Select a state...");
combo.setDisplayField("name");
combo.setWidth(150);
combo.setStore(states);
combo.setTypeAhead(true);
combo.setTriggerAction(TriggerAction.ALL);
vp.add(combo);
答案 0 :(得分:1)
假设您正在使用GXT并且之前正在使用GXT Window类,您可以这样做:
myWindow.addBeforeShowHandler(new BeforeShowEvent.BeforeShowHandler() {
@Override
public void onBeforeShow(BeforeShowEvent event) {
mxComoBox.clear();
}
});
您会看到旧值,因为弹出窗口会被重复使用。因此,当弹出窗口可见时,您必须清除组合的值。
此代码应与GXT 3.1.2一起使用。旧版本的GXT可能有不同的编码。
希望有所帮助。