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 --- HISTORY | 1 + framework/Web/UI/WebControls/TDataGrid.php | 12 ++++++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/HISTORY b/HISTORY index b59150c2..c6d39dc5 100644 --- a/HISTORY +++ b/HISTORY @@ -1,6 +1,7 @@ Version 3.0.3 August 6, 2006 ============================ BUG: Ticket#264 - Typos in some exception throw statements (Knut) +BUG: TDataGrid may complain getting ItemType on a non-object if the grid is not data-bound (Qiang) NEW: Added TStyleSheet (Wei) Version 3.0.2 July 2, 2006 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