From f8ac882b55ae44c47e3269a5cd7b5f2fa308f10b Mon Sep 17 00:00:00 2001 From: xue <> Date: Mon, 3 Jul 2006 14:27:27 +0000 Subject: Fixed a bug that TDataGrid may complain getting ItemType on a non-object if the grid is not data-bound --- framework/Web/UI/WebControls/TDataGrid.php | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'framework/Web/UI/WebControls') diff --git a/framework/Web/UI/WebControls/TDataGrid.php b/framework/Web/UI/WebControls/TDataGrid.php index fead5344..ab956d9c 100644 --- a/framework/Web/UI/WebControls/TDataGrid.php +++ b/framework/Web/UI/WebControls/TDataGrid.php @@ -213,7 +213,7 @@ class TDataGrid extends TBaseDataList implements INamingContainer if($object instanceof TDataGridColumn) $this->getColumns()->add($object); else - parent::addParsedObject($object); + parent::addParsedObject($object); // this is needed by EmptyTemplate } /** @@ -246,6 +246,14 @@ class TDataGrid extends TBaseDataList implements INamingContainer return $this->_items; } + /** + * @return integer number of items + */ + public function getItemCount() + { + return $this->_items?$this->_items->getCount():0; + } + /** * Creates a style object for the control. * This method creates a {@link TTableStyle} to be used by datagrid. @@ -1423,7 +1431,7 @@ class TDataGrid extends TBaseDataList implements INamingContainer $this->renderContents($writer); $control->renderEndTag($writer); } - else + else if($this->getViewState('ItemCount',0)>0) { $this->applyItemStyles(); if($this->_topPager) -- cgit v1.2.3