Id Name Action
281 Wandering Wallaby Blahblah
282 Black Bird Blahblah
283 Wicked Whale Blahblah
284 Upset Unicorn Blahblah
285 Beautiful Tetris Task Force Blahblah
286 Preschool Bandicoot Slam Blahblah
287 Mind-Bending Harpoon Live Blahblah
288 Thankful Thrush Blahblah
289 Lovely Lizard Blahblah
290 First-Person Toon Horror Blahblah
291 Cheerful Cat Blahblah
292 Faithful Fox Blahblah
293 Perfect Puffin Blahblah
294 Blue-eyed Badger Blahblah
295 Heavy Metal Outlaw Boy Blahblah
296 Quiet Surgery vs. Capcom Blahblah
297 Jealous Jay Blahblah
298 Magnetic Conga Ransom Blahblah
299 Irresistible Speed Scandal Blahblah
300 Shameful Hoedown Pioneer Blahblah
( Items: 281 - 300 from 1020 )
  See the code below 👇 or see GitHub
public function createComponentGrid(): DataGrid
{
	$grid = new DataGrid();

	$grid->setDataSource($this->dibiConnection->select('*')->from('users'));

	$grid->setItemsPerPageList([20, 50, 100]);

	$grid->setSortable();

	$grid->addColumnNumber('id', 'Id')
		->setAlign('start')
		->setSortable();

	$grid->addColumnText('name', 'Name')
		->setSortable();

	$multiAction = $grid->addMultiAction('multi_blah', 'MultiAction')
		->addAction('blah', 'Blahblah', 'blah!')
		->addAction('blah2', 'Blahblah2', 'blah!', ['name']);

	$multiAction
		->getAction('blah2')
		->setIcon('check');

	$grid->addAction('blah', 'Blahblah', 'blah!')
		->setClass('btn btn-xs btn-primary ajax');

	$grid->addAction('this', '')
		->setIcon('redo')
		->setClass('btn btn-xs btn-success');

	$actionCallback = $grid->addActionCallback('custom_callback', '');

	$actionCallback
		->setIcon('sun')
		->setTitle('Hello, sun')
		->setClass('btn btn-xs btn-default btn-secondary ajax');

	$actionCallback->onClick[] = function ($itemId): void {
		$this->flashMessage('Custom callback triggered, id: ' . $itemId);
		$this->redrawControl('flashes');
	};

	$grid->addAction('delete', '', 'delete!')
		->setIcon('trash')
		->setTitle('Delete')
		->setClass('btn btn-xs btn-danger ajax')
		->setConfirmation(
			new StringConfirmation('Do you really want to delete example %s?', 'name')
		);

	$grid->addToolbarButton('this', 'Toolbar')->addAttributes(['foo' => 'bar']);
	$grid->addToolbarButton('this#2', 'Button', ['foo' => 'bar']);

	return $grid;
}