Id Name Action
81 Selfish Snail Blahblah
82 Prehistoric Toon Interactive Blahblah
83 Disturbed Dunlin Blahblah
84 Itchy Impala Blahblah
85 Good Gnu Blahblah
86 Dance Dance Jazz Park Blahblah
87 Fisher Price Bingo Man Blahblah
88 Bewildering Batman Revenge Blahblah
89 Political Scorched Earth Syndrome Blahblah
90 Naughty Narwhal Blahblah
91 Xenophobic Xenomorph Blahblah
92 Cooperative Camel Blahblah
93 Famous Falcon Blahblah
94 Samurai Dance Fiasco Blahblah
95 Terrible Teira Blahblah
96 Robot Dating Force Blahblah
97 Better Butterfly Blahblah
98 Yellowed Yacare Blahblah
99 Cruel Crayfish Blahblah
100 Morbidly Obese Maze Playhouse Blahblah
( Items: 81 - 100 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;
}