CGridColumn
包 | zii.widgets.grid |
---|---|
继承 | abstract class CGridColumn » CComponent |
子类 | CButtonColumn, CCheckBoxColumn, CDataColumn, CLinkColumn |
源自 | 1.1 |
版本 | $Id: CGridColumn.php 3426 2011-10-25 00:01:09Z alexander.makarow $ |
源码 | framework/zii/widgets/grid/CGridColumn.php |
A CGridColumn object represents the specification for rendering the cells in a particular grid view column.
In a column, there is one header cell, multiple data cells, and an optional footer cell. Child classes may override renderHeaderCellContent, renderDataCellContent and renderFooterCellContent to customize how these cells are rendered.
公共属性
隐藏继承属性
属性 | 类型 | 描述 | 定义在 |
---|---|---|---|
cssClassExpression | string | 计算PHP表达式中每一个数据元件, 其结果作为这个数据元件的CSS类名。在这个表达式中, 变量$row 是行号(零基础); $data 是该行的数据模型; $this 是列的对象。 | CGridColumn |
footer | string | 底部元件文本。请注意,它不会变成HTML编码。 | CGridColumn |
footerHtmlOptions | array | HTML中底部元件标签的选项。 | CGridColumn |
grid | CGridView | 拥有此列的表格视图对象。 | CGridColumn |
hasFooter | boolean | 确定此列是否有底部元件。 这决定基于是否footer已设置。 | CGridColumn |
header | string | 头部元件文本。请注意,它不会变成HTML编码。 | CGridColumn |
headerHtmlOptions | array | HTML中头部元件标签的选项。 | CGridColumn |
htmlOptions | array | HTML中数据元件标签的选项。 | CGridColumn |
id | string | the ID of this column. | CGridColumn |
visible | boolean | 此列是否可见。默认为true。 | CGridColumn |
公共方法
隐藏继承方法
方法 | 描述 | 定义在 |
---|---|---|
__call() | 如果类中没有调的方法名,则调用这个方法。 | CComponent |
__construct() | 构造方法。 | CGridColumn |
__get() | 返回一个属性值、一个事件处理程序列表或一个行为名称。 | CComponent |
__isset() | 检查一个属性是否为null。 | CComponent |
__set() | 设置一个组件的属性值。 | CComponent |
__unset() | 设置一个组件的属性为null。 | CComponent |
asa() | 返回这个名字的行为对象。 | CComponent |
attachBehavior() | 附加一个行为到组件。 | CComponent |
attachBehaviors() | 附加一个行为列表到组件。 | CComponent |
attachEventHandler() | 为事件附加一个事件处理程序。 | CComponent |
canGetProperty() | 确定属性是否可读。 | CComponent |
canSetProperty() | 确定属性是否可写。 | CComponent |
detachBehavior() | 从组件中分离一个行为。 | CComponent |
detachBehaviors() | 从组件中分离所有行为。 | CComponent |
detachEventHandler() | 分离一个存在的事件处理程序。 | CComponent |
disableBehavior() | 禁用一个附加行为。 | CComponent |
disableBehaviors() | 禁用组件附加的所有行为。 | CComponent |
enableBehavior() | 启用一个附加行为。 | CComponent |
enableBehaviors() | 启用组件附加的所有行为。 | CComponent |
evaluateExpression() | 计算一个PHP表达式,或根据组件上下文执行回调。 | CComponent |
getEventHandlers() | 返回一个事件的附加处理程序列表。 | CComponent |
getHasFooter() | 返回确定此列是否有底部元件。 这决定基于是否footer已设置。 | CGridColumn |
hasEvent() | 确定一个事件是否定义。 | CComponent |
hasEventHandler() | 检查事件是否有附加的处理程序。 | CComponent |
hasProperty() | 确定属性是否被定义。 | CComponent |
init() | 初始化列。 | CGridColumn |
raiseEvent() | 发起一个事件。 | CComponent |
renderDataCell() | 渲染一个数据元件。 | CGridColumn |
renderFilterCell() | 渲染过滤器元件。 | CGridColumn |
renderFooterCell() | 渲染底部元件。 | CGridColumn |
renderHeaderCell() | 渲染头部元件。 | CGridColumn |
受保护方法
隐藏继承方法
方法 | 描述 | 定义在 |
---|---|---|
renderDataCellContent() | Renders the data cell content. | CGridColumn |
renderFilterCellContent() | Renders the filter cell content. | CGridColumn |
renderFooterCellContent() | Renders the footer cell content. | CGridColumn |
renderHeaderCellContent() | Renders the header cell content. | CGridColumn |
属性详细
cssClassExpression 属性 public string $cssClassExpression;计算PHP表达式中每一个数据元件, 其结果作为这个数据元件的CSS类名。在这个表达式中, 变量$row
是行号(零基础); $data
是该行的数据模型; $this
是列的对象。
底部元件文本。请注意,它不会变成HTML编码。
footerHtmlOptions 属性 public array $footerHtmlOptions;HTML中底部元件标签的选项。
grid 属性 public CGridView $grid;拥有此列的表格视图对象。
hasFooter 属性 只读 public boolean getHasFooter()确定此列是否有底部元件。 这决定基于是否footer已设置。
header 属性 public string $header;头部元件文本。请注意,它不会变成HTML编码。
headerHtmlOptions 属性 public array $headerHtmlOptions;HTML中头部元件标签的选项。
htmlOptions 属性 public array $htmlOptions;HTML中数据元件标签的选项。
id 属性 public string $id;the ID of this column. This value should be unique among all grid view columns. If this is set, it will be assigned one automatically.
visible 属性 public boolean $visible;此列是否可见。默认为true。
方法详细
__construct() 方法public void __construct(CGridView $grid) | ||
$grid | CGridView | 拥有此列的表格视图。 |
publicfunction__construct($grid)
{
$this->grid=$grid;
}
构造方法。
getHasFooter() 方法public boolean getHasFooter() | ||
{return} | boolean | 确定此列是否有底部元件。 这决定基于是否footer已设置。 |
publicfunctiongetHasFooter()
{
return$this->footer!==null;
}
init() 方法public void init() |
publicfunctioninit()
{
}
初始化列。 表格视图初始化时自身渲染之前调用此方法。 您可以重写此方法,准备渲染列。
renderDataCell() 方法public void renderDataCell(integer $row) | ||
$row | integer | 行数(零基础) |
publicfunctionrenderDataCell($row)
{
$data=$this->grid->dataProvider->data[$row];
$options=$this->htmlOptions;
if($this->cssClassExpression!==null)
{
$class=$this->evaluateExpression($this->cssClassExpression,array('row'=>$row,'data'=>$data));
if(isset($options['class']))
$options['class'].=''.$class;
else
$options['class']=$class;
}
echoCHtml::openTag('td',$options);
$this->renderDataCellContent($row,$data);
echo'</td>';
}
渲染一个数据元件。
renderDataCellContent() 方法protected void renderDataCellContent(integer $row, mixed $data) | ||
$row | integer | the row number (zero-based) |
$data | mixed | the data associated with the row |
protectedfunctionrenderDataCellContent($row,$data)
{
echo$this->grid->blankDisplay;
}
Renders the data cell content. This method SHOULD be overridden to customize the rendering of the data cell.
renderFilterCell() 方法 (可用自 v1.1.1)public void renderFilterCell() |
publicfunctionrenderFilterCell()
{
echo"<td>";
$this->renderFilterCellContent();
echo"</td>";
}
渲染过滤器元件。
renderFilterCellContent() 方法 (可用自 v1.1.1)protected void renderFilterCellContent() |
protectedfunctionrenderFilterCellContent()
{
echo$this->grid->blankDisplay;
}
Renders the filter cell content. The default implementation simply renders a space. This method may be overridden to customize the rendering of the filter cell (if any).
renderFooterCell() 方法public void renderFooterCell() |
publicfunctionrenderFooterCell()
{
echoCHtml::openTag('td',$this->footerHtmlOptions);
$this->renderFooterCellContent();
echo'</td>';
}
渲染底部元件。
renderFooterCellContent() 方法protected void renderFooterCellContent() |
protectedfunctionrenderFooterCellContent()
{
echotrim($this->footer)!==''?$this->footer:$this->grid->blankDisplay;
}
Renders the footer cell content. The default implementation simply renders footer. This method may be overridden to customize the rendering of the footer cell.
renderHeaderCell() 方法public void renderHeaderCell() |
publicfunctionrenderHeaderCell()
{
$this->headerHtmlOptions['id']=$this->id;
echoCHtml::openTag('th',$this->headerHtmlOptions);
$this->renderHeaderCellContent();
echo"</th>";
}
渲染头部元件。
renderHeaderCellContent() 方法protected void renderHeaderCellContent() |
protectedfunctionrenderHeaderCellContent()
{
echotrim($this->header)!==''?$this->header:$this->grid->blankDisplay;
}
Renders the header cell content. The default implementation simply renders header. This method may be overridden to customize the rendering of the header cell.