我有一个MVVM对话框,列出了来自数据库的用户。点击时会出现一个添加按钮,它会打开一个模态(在MVC中)。添加用户后,模态将关闭。但添加的用户未填充在调用添加用户模式的父对话框中。有没有办法在不需要调用其他方法或刷新页面的情况下填充MVVM进行数据更改?
答案 0 :(得分:3)
您可以使用Global-Command
。
:
BindUtils.postGlobalCommand(null,null,"refreshUsers",null);
并在用户列表的ViewModel中:
@GlobalCommand
@NotifyChange("users")
public void refreshUsers(){}
注意:我假设你有一个方法getUsers
。否则将users
重命名为正确的用户获取者。
答案 1 :(得分:0)
在您的视图模型中,为您的用户使用java.util.List
,您只需以这种方式使用org.zkoss.zul.ListModelList
,向ListModelList添加或删除项目将相应地更新列表框或网格。