CGridColumn
Package | zii.widgets.grid |
---|---|
Inheritance | abstract class CGridColumn » CComponent |
Subclasses | CButtonColumn, CCheckBoxColumn, CDataColumn, CLinkColumn |
Since | 1.1 |
Source Code | 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.
Public Properties
Property | Type | Description | Defined By |
---|---|---|---|
cssClassExpression | string | a PHP expression that is evaluated for every data cell and whose result is used as the CSS class name for the data cell. | CGridColumn |
filterCellContent | string | Returns the filter cell content. | CGridColumn |
filterHtmlOptions | array | the HTML options for the filter cell tag. | CGridColumn |
footer | string | the footer cell text. | CGridColumn |
footerCellContent | string | Returns the footer cell content. | CGridColumn |
footerHtmlOptions | array | the HTML options for the footer cell tag. | CGridColumn |
grid | CGridView | the grid view object that owns this column. | CGridColumn |
hasFooter | boolean | whether this column has a footer cell. | CGridColumn |
header | string | the header cell text. | CGridColumn |
headerCellContent | string | Returns the header cell content. | CGridColumn |
headerHtmlOptions | array | the HTML options for the header cell tag. | CGridColumn |
htmlOptions | array | the HTML options for the data cell tags. | CGridColumn |
id | string | the ID of this column. | CGridColumn |
visible | boolean | whether this column is visible. | CGridColumn |
Public Methods
Method | Description | Defined By |
---|---|---|
__call() | Calls the named method which is not a class method. | CComponent |
__construct() | Constructor. | CGridColumn |
__get() | Returns a property value, an event handler list or a behavior based on its name. | CComponent |
__isset() | Checks if a property value is null. | CComponent |
__set() | Sets value of a component property. | CComponent |
__unset() | Sets a component property to be null. | CComponent |
asa() | Returns the named behavior object. | CComponent |
attachBehavior() | Attaches a behavior to this component. | CComponent |
attachBehaviors() | Attaches a list of behaviors to the component. | CComponent |
attachEventHandler() | Attaches an event handler to an event. | CComponent |
canGetProperty() | Determines whether a property can be read. | CComponent |
canSetProperty() | Determines whether a property can be set. | CComponent |
detachBehavior() | Detaches a behavior from the component. | CComponent |
detachBehaviors() | Detaches all behaviors from the component. | CComponent |
detachEventHandler() | Detaches an existing event handler. | CComponent |
disableBehavior() | Disables an attached behavior. | CComponent |
disableBehaviors() | Disables all behaviors attached to this component. | CComponent |
enableBehavior() | Enables an attached behavior. | CComponent |
enableBehaviors() | Enables all behaviors attached to this component. | CComponent |
evaluateExpression() | Evaluates a PHP expression or callback under the context of this component. | CComponent |
getDataCellContent() | Returns the data cell content. | CGridColumn |
getEventHandlers() | Returns the list of attached event handlers for an event. | CComponent |
getFilterCellContent() | Returns the filter cell content. | CGridColumn |
getFooterCellContent() | Returns the footer cell content. | CGridColumn |
getHasFooter() | Returns whether this column has a footer cell. This is determined based on whether footer is set. | CGridColumn |
getHeaderCellContent() | Returns the header cell content. | CGridColumn |
hasEvent() | Determines whether an event is defined. | CComponent |
hasEventHandler() | Checks whether the named event has attached handlers. | CComponent |
hasProperty() | Determines whether a property is defined. | CComponent |
init() | Initializes the column. | CGridColumn |
raiseEvent() | Raises an event. | CComponent |
renderDataCell() | Renders a data cell. | CGridColumn |
renderFilterCell() | Renders the filter cell. | CGridColumn |
renderFooterCell() | Renders the footer cell. | CGridColumn |
renderHeaderCell() | Renders the header cell. | CGridColumn |
Protected Methods
Method | Description | Defined By |
---|---|---|
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 |
Property Details
cssClassExpression property
public string $cssClassExpression;
a PHP expression that is evaluated for every data cell and whose result is used as the CSS class name for the data cell. In this expression, you can use the following variables:
-
$row
the row number (zero-based) -
$data
the data model for the row -
$this
the column object
A PHP expression can be any PHP code that has a value. To learn more about what an expression is, please refer to the php manual.
filterCellContent property read-only (available since v1.1.16)
public string getFilterCellContent()
Returns the filter cell content. The default implementation simply returns an empty column. This method may be overridden to customize the rendering of the filter cell (if any).
filterHtmlOptions property
public array $filterHtmlOptions;
the HTML options for the filter cell tag.
footer property
public string $footer;
the footer cell text. Note that it will not be HTML-encoded.
footerCellContent property read-only (available since v1.1.16)
public string getFooterCellContent()
Returns the footer cell content. The default implementation simply returns footer. This method may be overridden to customize the rendering of the footer cell.
footerHtmlOptions property
public array $footerHtmlOptions;
the HTML options for the footer cell tag.
grid property
public CGridView $grid;
the grid view object that owns this column.
hasFooter property read-only
public boolean getHasFooter()
whether this column has a footer cell. This is determined based on whether footer is set.
header property
public string $header;
the header cell text. Note that it will not be HTML-encoded.
headerCellContent property read-only (available since v1.1.16)
public string getHeaderCellContent()
Returns the header cell content. The default implementation simply returns header. This method may be overridden to customize the rendering of the header cell.
headerHtmlOptions property
public array $headerHtmlOptions;
the HTML options for the header cell tag.
htmlOptions property
public array $htmlOptions;
the HTML options for the data cell tags.
id property
public string $id;
the ID of this column. This value should be unique among all grid view columns. If this is not set, it will be assigned one automatically.
visible property
public boolean $visible;
whether this column is visible. Defaults to true.
Method Details
__construct() method
public void __construct(CGridView $grid) | ||
$grid | CGridView | the grid view that owns this column. |
public function __construct($grid)
{
$this->grid=$grid;
}
Constructor.
getDataCellContent() method (available since v1.1.16)
public string getDataCellContent(integer $row) | ||
$row | integer | the row number (zero-based) The data for this row is available via $this->grid->dataProvider->data[$row];
|
{return} | string | the data cell content. |
public function getDataCellContent($row)
{
return $this->grid->blankDisplay;
}
Returns the data cell content. This method SHOULD be overridden to customize the rendering of the data cell.
getFilterCellContent() method (available since v1.1.16)
public string getFilterCellContent() | ||
{return} | string | the filter cell content. |
public function getFilterCellContent()
{
return $this->grid->blankDisplay;
}
Returns the filter cell content. The default implementation simply returns an empty column. This method may be overridden to customize the rendering of the filter cell (if any).
getFooterCellContent() method (available since v1.1.16)
public string getFooterCellContent() | ||
{return} | string | the footer cell content. |
public function getFooterCellContent()
{
return trim($this->footer)!=='' ? $this->footer : $this->grid->blankDisplay;
}
Returns the footer cell content. The default implementation simply returns footer. This method may be overridden to customize the rendering of the footer cell.
getHasFooter() method
public boolean getHasFooter() | ||
{return} | boolean | whether this column has a footer cell. This is determined based on whether footer is set. |
public function getHasFooter()
{
return $this->footer!==null;
}
getHeaderCellContent() method (available since v1.1.16)
public string getHeaderCellContent() | ||
{return} | string | the header cell content. |
public function getHeaderCellContent()
{
return trim($this->header)!=='' ? $this->header : $this->grid->blankDisplay;
}
Returns the header cell content. The default implementation simply returns header. This method may be overridden to customize the rendering of the header cell.
init() method
public void init() |
Initializes the column. This method is invoked by the grid view when it initializes itself before rendering. You may override this method to prepare the column for rendering.
renderDataCell() method
public void renderDataCell(integer $row) | ||
$row | integer | the row number (zero-based) |
public function renderDataCell($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(!empty($class))
{
if(isset($options['class']))
$options['class'].=' '.$class;
else
$options['class']=$class;
}
}
echo CHtml::openTag('td',$options);
$this->renderDataCellContent($row,$data);
echo '</td>';
}
Renders a data cell.
renderDataCellContent() method
protected void renderDataCellContent(integer $row, mixed $data) | ||
$row | integer | the row number (zero-based) |
$data | mixed | the data associated with the row |
protected function renderDataCellContent($row,$data)
{
echo $this->getDataCellContent($row);
}
Renders the data cell content.
renderFilterCell() method (available since v1.1.1)
public void renderFilterCell() |
public function renderFilterCell()
{
echo CHtml::openTag('td',$this->filterHtmlOptions);
$this->renderFilterCellContent();
echo "</td>";
}
Renders the filter cell.
renderFilterCellContent() method (available since v1.1.1)
protected void renderFilterCellContent() |
protected function renderFilterCellContent()
{
echo $this->getFilterCellContent();
}
Renders the filter cell content.
renderFooterCell() method
public void renderFooterCell() |
public function renderFooterCell()
{
echo CHtml::openTag('td',$this->footerHtmlOptions);
$this->renderFooterCellContent();
echo '</td>';
}
Renders the footer cell.
renderFooterCellContent() method
protected void renderFooterCellContent() |
protected function renderFooterCellContent()
{
echo $this->getFooterCellContent();
}
Renders the footer cell content.
renderHeaderCell() method
public void renderHeaderCell() |
public function renderHeaderCell()
{
$this->headerHtmlOptions['id']=$this->id;
echo CHtml::openTag('th',$this->headerHtmlOptions);
$this->renderHeaderCellContent();
echo "</th>";
}
Renders the header cell.
renderHeaderCellContent() method
protected void renderHeaderCellContent() |
protected function renderHeaderCellContent()
{
echo $this->getHeaderCellContent();
}
Renders the header cell content.
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc/api/1.1/CGridColumn