如何从ZK中的SelectedTab获取ViewModel?

时间:2013-02-21 11:56:49

标签: mvvm zk zul

我有一个工具栏,当我点击我正在创建标签的任何项目时,我正在使用大量项目。这样的代码

public static void openNewTab(String title, String path, Tabbox mainTab) {
    Tab tab = new Tab(title);
    tab.setClosable(true);
    tab.setParent(mainTab.getTabs());
    Tabpanel tabpanel = new Tabpanel();
    Include include = new Include(path);
    include.setParent(tabpanel);
    tabpanel.setParent(mainTab.getTabpanels());
    mainTab.setSelectedTab(tab);
}

现在我想要获取所选标签的ViewModel当任何Ctrl键按下ZUL时... 我有这个

@Wire("#mainTab")
Tabbox mainTab;
   Tab tab = mainTab.getSelectedTab( );

是否可以从selectedTab变量中获取ViewModel?

我这样做

Include include = new Include(path);
include.setParent(tabpanel);
Object object = include.getAttribute("viewModel");

现在对象给出null我可以从这里获取ViewModel,而我在这里包含一个ZUl吗?

1 个答案:

答案 0 :(得分:1)

似乎id是获取vm的属性名称,请参阅sample at zkfiddle

Btw“binder”是获取活页夹的属性名称,有关详细信息,请参阅Source code of binder

您还可以尝试使用Component.getAttributes获取属性映射并检查其中的所有属性,请参阅Javadoc: Component#getAttributes