31.6. <layout:cell>

Cell是PanelGrid构件的一个单元格,必须作为PanelGrid的子元素才能使用,Cell可以设置宽度,排列方式,所占列数、行数等。

31.6.1. 构件信息

表 31.14. 构件信息

Component Typeorg.operamasks.faces.component.layout.UICell
Component Familyjavax.faces.Panel
Component Classorg.operamasks.faces.component.layout.UICell
Tag Classorg.operamasks.faces.webapp.layout.CellTag

继承体系

+java.lang.Object

++javax.faces.component.UIComponent

+++javax.faces.component.UIComponentBase

++++javax.faces.component.UIPanel

+++++org.operamasks.faces.component.html.HtmlGridCell

++++++org.operamasks.faces.component.layout.UICell

31.6.2. 属性

表 31.15. 属性

align 定义类 org.operamasks.faces.component.html.HtmlGridCell
类型 javax.el.ValueExpression(java.lang.String)
是否必须 延时求值
指定Cell的子元素横向的排列方式
binding 定义类 javax.faces.component.UIComponentBase
类型 javax.el.ValueExpression(javax.faces.component.UIComponent)
是否必须 延时求值
一个值表达式,用于把该组件链接到一个ManagedBean的某个属性。
colspan 定义类 org.operamasks.faces.component.html.HtmlGridCell
类型 javax.el.ValueExpression(int)
是否必须 延时求值
指定Cell所占的列数
id 定义类 javax.faces.component.UIComponentBase
类型 java.lang.String
是否必须 延时求值
这个组件的组件标识符。这个值在最近的命名容器类型的父组件范围内,必须是唯一的。
rendered 定义类 javax.faces.component.UIComponentBase
类型 boolean(boolean)
是否必须 延时求值
一个标志,指出该组件是否要在任何随后的form提交过程中被渲染或处理。 这个属性的缺省值是true。
rowspan 定义类 org.operamasks.faces.component.html.HtmlGridCell
类型 javax.el.ValueExpression(int)
是否必须 延时求值
指定Cell所占的行数
style 定义类 org.operamasks.faces.component.html.HtmlGridCell
类型 javax.el.ValueExpression(java.lang.String)
是否必须 延时求值
构件渲染时应用到构件的CSS风格,对应于元素的style属性
styleClass 定义类 org.operamasks.faces.component.html.HtmlGridCell
类型 javax.el.ValueExpression(java.lang.String)
是否必须 延时求值
空格分隔的CSS风格类名列表,渲染时作为元素的"class"属性
valign 定义类 org.operamasks.faces.component.html.HtmlGridCell
类型 javax.el.ValueExpression(java.lang.String)
是否必须 延时求值
指定Cell的子元素纵向的排列方式

31.6.3. 构件API

31.6.4. 示例

下面的例子是一个简单的PanelGrid布局,最外面是一个layout:panelGrid标签,通过"columns"属性指定PanelGrid的列数,里面放3个layout:cell,第一个占一行一列,它的子元素横向居中;第二个占一行一列,它的子元素纵向居顶;第三个占一行两列,它的子元素按照默认的方式排列。

<layout:panelGrid columns="2">
    <layout:cell colspan="1" rowspan="1" align="center">1</layout:cell>
    <layout:cell colspan="1" rowspan="1" valign="top">2</layout:cell>
    <layout:cell colspan="2" rowspan="1">3</layout:cell>
</layout:panelGrid>