在实际的业务当中,会有一些场景左树结构中的数据并不是树形基础资料,这时候就需要我们通过插件去定义列表界面左树中的数据以及结构,具体操作如下。
1.先调整列表界面的列表表单模版为bos_templatetreelist。使列表界面改为左树右表结构。
2.添加插件,继承kd.bos.list.plugin.StandardTreeListPlugin,并重写kd.bos.list.plugin.AbstractTreeListPlugin#initialize()方法。
3.在方法中获取左树空接的model和view
ITreeModel treeModel = this.getTreeModel();
TreeView treeView = this.getView().getControl(KEY_TREEVIEW);
4.创建根节点,并创建其他子节点,通过代码构建节点的上下级结构。
TreeNode rootnode= this.getTreeModel().createRootNode();
TreeNode node = new TreeNode();
String nodeID = row.getString("id");
String parentid = row.getString("parent.id");
node.setText(row.getString("name"));
node.setParentid(rootnode.getId());
5.最后将根节点set到treeModel和treeView中即可。
treeModel.setRoot(Node);
treeView.addNode(Node);
推荐阅读