Id Name Action
521 Different Dotterel Blahblah
522 Ultimate Sword Collection Blahblah
523 Nice Newt Blahblah
524 Grumpy Gibbon Blahblah
525 BudgetSoft Presents: Fashion Revenge Blahblah
526 Custom Dating Extra Blahblah
527 Hindu Surf Project Blahblah
528 Sensual Toon Sisters Blahblah
529 Proud Pintail Blahblah
530 Grieving Goshawk Blahblah
531 Cautious Cardinal Blahblah
532 Fisher Price Handgun Scam Blahblah
533 Good Grouse Blahblah
534 Clean Chicken Blahblah
535 Courageous Caracal Blahblah
536 Aquatic Motocross Marines Blahblah
537 Interactive Biplane Palace Blahblah
538 Mexican Insect Warrior Blahblah
539 Odd Octopus Blahblah
540 Zany Desert Jam Blahblah
( Items: 521 - 540 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;
}