Id Name Action
141 Silent Harpoon Saloon Blahblah
142 Adventurous Aardvark Blahblah
143 Disney Bingo - The Dark Project Blahblah
144 Unsightly Unicorn Blahblah
145 Prickly Parrot Blahblah
146 Colorful Corncrake Blahblah
147 Distinguished Bungie in the Middle East Blahblah
148 Sinister Banana Interactive Blahblah
149 Shrunken Dentist Preacher Blahblah
150 Everybody Hates the Dungeon Massacre Blahblah
151 Enchanting Eland Blahblah
152 Obedient Ostrich Blahblah
153 Surprise Afro Palace Blahblah
154 Homeless Hedgehog Blahblah
155 Unforgettable Bazooka Revisited Blahblah
156 Better Badger Blahblah
157 Religious Trailer Park EX Blahblah
158 Quiet Cyborg Smash Blahblah
159 Crazy Capuchin Blahblah
160 Fragile Flamingo Blahblah
( Items: 141 - 160 from 1016 )
  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;
}