Id Name Action
761 Vivacious Vendace Blahblah
762 Grotesque Gannet Blahblah
763 Doubtful Deer Blahblah
764 Grieving Grouse Blahblah
765 Insane Rugby of Might and Magic Blahblah
766 Unpleasant Volleyball Caper Blahblah
767 Heavy Chase Explosion Blahblah
768 Friendly Fish Blahblah
769 Lost Puzzle Voyage Blahblah
770 The Six Million Dollar Sniper Tycoon Blahblah
771 Enchanting Echidna Blahblah
772 BudgetSoft Presents: Plumber Train Blahblah
773 Future Quiz Desperadoes Blahblah
774 Psycho Banana Overlords Blahblah
775 Thankful Teira Blahblah
776 College Dance Siege Blahblah
777 Rich Reindeer Blahblah
778 Heroic Graveyard Fiesta Blahblah
779 Annoyed Anteater Blahblah
780 Confused Cheetah Blahblah
( Items: 761 - 780 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;
}