summaryrefslogtreecommitdiff
path: root/framework/Web/UI/WebControls/TDataGrid.php
diff options
context:
space:
mode:
Diffstat (limited to 'framework/Web/UI/WebControls/TDataGrid.php')
-rw-r--r--framework/Web/UI/WebControls/TDataGrid.php30
1 files changed, 20 insertions, 10 deletions
diff --git a/framework/Web/UI/WebControls/TDataGrid.php b/framework/Web/UI/WebControls/TDataGrid.php
index c6d27b7e..367b2c9b 100644
--- a/framework/Web/UI/WebControls/TDataGrid.php
+++ b/framework/Web/UI/WebControls/TDataGrid.php
@@ -1251,15 +1251,25 @@ class TDataGrid extends TBaseDataList implements INamingContainer
{
$itemStyle=$this->getViewState('ItemStyle',null);
- $alternatingItemStyle=new TTableItemStyle($itemStyle);
- if(($style=$this->getViewState('AlternatingItemStyle',null))!==null)
- $alternatingItemStyle->mergeWith($style);
+ $alternatingItemStyle=$this->getViewState('AlternatingItemStyle',null);
+ if($itemStyle!==null)
+ {
+ if($alternatingItemStyle===null)
+ $alternatingItemStyle=$itemStyle;
+ else
+ $alternatingItemStyle->mergeWith($itemStyle);
+ }
$selectedItemStyle=$this->getViewState('SelectedItemStyle',null);
- $editItemStyle=new TTableItemStyle($selectedItemStyle);
- if(($style=$this->getViewState('EditItemStyle',null))!==null)
- $editItemStyle->copyFrom($style);
+ $editItemStyle=$this->getViewState('EditItemStyle',null);
+ if($selectedItemStyle!==null)
+ {
+ if($editItemStyle===null)
+ $editItemStyle=$selectedItemStyle;
+ else
+ $editItemStyle->mergeWith($selectedItemStyle);
+ }
$headerStyle=$this->getViewState('HeaderStyle',null);
$footerStyle=$this->getViewState('FooterStyle',null);
@@ -1304,6 +1314,8 @@ class TDataGrid extends TBaseDataList implements INamingContainer
$item->getStyle()->mergeWith($alternatingItemStyle);
break;
case 'SelectedItem':
+ if($selectedItemStyle)
+ $item->getStyle()->mergeWith($selectedItemStyle);
if($index % 2==1)
{
if($itemStyle)
@@ -1314,10 +1326,10 @@ class TDataGrid extends TBaseDataList implements INamingContainer
if($alternatingItemStyle)
$item->getStyle()->mergeWith($alternatingItemStyle);
}
- if($selectedItemStyle)
- $item->getStyle()->mergeWith($selectedItemStyle);
break;
case 'EditItem':
+ if($editItemStyle)
+ $item->getStyle()->mergeWith($editItemStyle);
if($index % 2==1)
{
if($itemStyle)
@@ -1328,8 +1340,6 @@ class TDataGrid extends TBaseDataList implements INamingContainer
if($alternatingItemStyle)
$item->getStyle()->mergeWith($alternatingItemStyle);
}
- if($editItemStyle)
- $item->getStyle()->mergeWith($editItemStyle);
break;
case 'Pager':
if($pagerStyle)