From 5ecce1f03a230da31fddc91008e76978ef90fa78 Mon Sep 17 00:00:00 2001 From: xue <> Date: Sat, 10 Dec 2005 20:21:28 +0000 Subject: If a control is invisible, it's PreRender event will not be raised. --- framework/Web/UI/TControl.php | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/framework/Web/UI/TControl.php b/framework/Web/UI/TControl.php index 86397770..a4625d18 100644 --- a/framework/Web/UI/TControl.php +++ b/framework/Web/UI/TControl.php @@ -1040,12 +1040,15 @@ class TControl extends TComponent */ protected function preRenderRecursive() { - $this->onPreRender(null); - if($this->getHasControls()) + if($this->getVisible(false)) { - foreach($this->_rf[self::RF_CONTROLS] as $control) - if($control instanceof TControl) - $control->preRenderRecursive(); + $this->onPreRender(null); + if($this->getHasControls()) + { + foreach($this->_rf[self::RF_CONTROLS] as $control) + if($control instanceof TControl) + $control->preRenderRecursive(); + } } $this->_stage=self::CS_PRERENDERED; } -- cgit v1.2.3