JSF 中页面表格融合 demo

来源:互联网 发布:无主之地mac 迅雷下载 编辑:程序博客网 时间:2024/05/19 02:01

1.1. 表格融合
目前针对表格融合的功能,通过中间件的同事的支持,对DataGrid支持表格融合,融合特性如下:
1.1.1. 支持特性
1. 可融合的表格,与标准表格,在UI中可使用统一的<w:grid>标签
2. 原有Grid的所有特性不受任何影响;
3. 对于可融合的表格,可以采用绑定数据+融合规则方式使用,但对其DataProvider有特定的要求,比如要提供某些融合规则。
4. 对于可融合的表格,如果不绑定数据,服务器端可以在渲染前对其进行cell级别的操作。
5. 对于可融合的表格,如果出现编辑框,则编辑框的形态只有一种形态,即:不是像EditDataGrid那样,单击或双击才进入编辑状态。
6. 对于可融合的表格,不能进行排序(所有列),不能进行列移动(所有列),不能选中行(所有行),可进行分页,可对列进行格式化,可以显示编辑框

1.1.2. 实现方式
在定义dataGrid的控件中,
1:首先设置属性merged="true"
如下:
<w:dataGrid id="grid1" value="#{mergedGrid1Bean.grid1Values}" merged="true" var="data"
mergedColumns="#{mergedGrid1Bean.grid1MergedColumns}" mergedInfos="#{mergedGrid1Bean.grid1MergedInfos}" width="800" height="200">
2:然后:设置融合的列
mergedColumns="#{mergedGrid1Bean.grid1MergedColumns}"
如:对应Bean的代码为:

//第二列,第四列,第五列根据显示的值是否相同,自动融合
public String[] getGrid1MergedColumns(){
return new String[]{"column2", "column4", "column5"};
}
3:可选设置融合格信息
mergedInfos为指定几个格融合后统一显示的信息,表示融合后的融合单元格显示的值
mergedInfos="#{mergedGrid1Bean.grid1MergedInfos}"
如:
//第三行第五列到第四行第七列整合起来
public MergedInfo[] getGrid1MergedInfos(){
return new MergedInfo[]{
new MergedInfo(2, 4, 3, 6, "测试")
};
}

 

原创粉丝点击