Id Name Action
961 Happy Blood Extravaganza Blahblah
962 Frankenstein Toon Explorer Blahblah
963 Maniac Vocabulary Inspector Blahblah
964 College Alien Task Force Blahblah
965 Shiny Shrike Blahblah
966 Healthy Horse Blahblah
967 Misty Manatee Blahblah
968 Disney Night Conflict Blahblah
969 Blazing Jackhammer Crusader Blahblah
970 Victorious Vendace Blahblah
971 Panzer Gun Bandits Blahblah
972 Fierce Frog Blahblah
973 Bling Bling Skate Crusader Blahblah
974 Average Albatross Blahblah
975 Twisted Deer Hunter Posse Blahblah
976 Intellectual Spelling Warfare Blahblah
977 Exquisite Quiz Roundup Blahblah
978 All-Star Bible Kid Blahblah
979 Mysterious Monkey Blahblah
980 Curious Capybara Blahblah
( Items: 961 - 980 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;
}