TreeGrid是一个树状结构的表格组件,它集成了Grid和Tree的多种特性.
<a:treeGrid bindTarget="function_tree_ds" expandField="_expanded" height="400" id="functionTreeGrid" idField="function_id" parentField="parent_function_id" showCheckBox="true" width="570"> <a:columns> <a:column name="function_name" prompt="功能名称" width="250"/> <a:column name="function_code" prompt="功能代码" width="120"/> <a:column editorFunction="expandEditorFunction" name="expanded" prompt="是否展开" width="80"/> <a:column align="right" editor="grid_nf" name="sequence" prompt="序列号" width="100"/> </a:columns> <a:editors> <a:numberField id="grid_nf"/> <a:checkBox id="grid_cb"/> </a:editors> </a:treeGrid>
从上图我们可以看到TreeGrid主要由两部分组成,左边的Tree结构,右边的Grid结构.TreeGrid的配置和Grid类似,也是通过column配置列信息,editors配置所有的编辑器.
和grid不同的是我们要指定TreeGrid的树节点信心.这里我们通过2个属性idField和parentField来配置.idField代表每一条record的唯一标识,parentField顾名思义代表 每一条record的父节点值(idField). 除了这2个属性我们还可以通过指定expandField属性来确定每个节点是否是展开状态,以及通过showCheckBox属性确定是否需要显示checkbox.
column的配合和grid相同,也可以定义renderer,lock等特性.同样TreeGrid也支持可编辑组件.
Table 1. TreeGrid标签属性
属性名 | 用途 | 默认值 | 是否必填 |
---|---|---|---|
checkField | record中用来显示树节点是否被选中的field。只有在属性showCheckBox为true的情况下才有效果。 | checked
| |
displayField | record中用来显示树节点文本信息的field。 | name
| |
expandField | record中用来表示树节点是否被伸展的field。 | expanded
| |
idField | record中用来指定树节点唯一标识的field。 | id
| |
parentField | record中用来指定树节点的父节点唯一标识的field。 | pid
| |
renderer | 节点渲染器 | ||
sequenceField | record中用来指定树节点序号的field。 | sequence
| |
showCheckBox | 是否显示多选框 | false
|