/** * Sets the data source object associated with the datagrid control. * In addition, the render method of all connected pagers is called so they * get updated when the data source is changed. Also the datagrid registers * itself for rendering in order to get it's content replaced on client side. * @param Traversable|array|string data source object */ public function setDataSource($value) { parent::setDataSource($value); if ($this->getActiveControl()->canUpdateClientSide()) { $this->renderPager(); $this->getPage()->getAdapter()->registerControlToRender($this, $this->getResponse()->createHtmlWriter()); } }