DownloadImplements
Methods for ^Mesour\DataGrid\Column\Text^
| Method | Default | Possible values | Returns | Required | Description |
|---------------|:-------:|----------------------|-------------------------------|----------|-----------------------------------------------------------|
| setCallback | none | callable $callback | ^Mesour\DataGrid\Column\Text^ | no | If you use callback, column shows output of this callback |
Callback parameters for method setCallback
| Parameter | Type | Description |
|------------|:-----------------------------------------------:|----------------------|
| $column | ^Mesour\DataGrid\Column\Text^ | Text column instance |
| $rowData | ^Mesour\Sources\ArrayHash^ / Entity / ActiveRow | Data for current row |
Events
=info=[Info] See onRender on events page
Usage
$mesourApp = //instance Mesour\Components\Application\IApplication
$source = //some <a href="http://components.mesour.com/version3/component/sources/" target="_blank">data source</a> or two-dimensional array
$source->setPrimaryKey('user_id');
$grid = new Mesour\UI\DataGrid('numberDataGrid', $mesourApp);
$grid->setSource($source);
//! here add some text columns
$grid->addText('surname', 'Name with surname')
->setCallback(function (Mesour\DataGrid\Column\Text $column, $rowData) {
return $rowData['name'] . ' ' . $rowData['surname'];
});
$grid->addText('email', 'E-mail')
->setCallback(function (Mesour\DataGrid\Column\Text $column, $rowData) {
return Mesour\Components\Utils\Html::el('a', [
'href' => 'mailto:' . $rowData['email']
])->add($rowData['email']);
});
$grid->render();
|