Prado\Web\UI\TControl::preRenderRecursive PHP Метод

preRenderRecursive() защищенный Метод

Only framework developers should use this method.
protected preRenderRecursive ( )
    protected function preRenderRecursive()
    {
        $this->autoDataBindProperties();
        if ($this->getVisible(false)) {
            if (isset($this->_rf[self::RF_ADAPTER])) {
                $this->_rf[self::RF_ADAPTER]->onPreRender(null);
            } else {
                $this->onPreRender(null);
            }
            if ($this->getHasControls()) {
                foreach ($this->_rf[self::RF_CONTROLS] as $control) {
                    if ($control instanceof TControl) {
                        $control->preRenderRecursive();
                    } else {
                        if ($control instanceof TCompositeLiteral) {
                            $control->evaluateDynamicContent();
                        }
                    }
                }
            }
        }
        $this->_stage = self::CS_PRERENDERED;
    }

Usage Example

Пример #1
0
 /**
  * Performs the PreRender step for the control and all its child controls.
  * This method overrides the parent implementation by setting up
  * the stack of the output cache in the page.
  * Only framework developers should use this method.
  * @param TControl the naming container control
  */
 protected function preRenderRecursive()
 {
     if ($this->_cacheAvailable && !$this->_dataCached) {
         $stack = $this->getPage()->getCachingStack();
         $stack->push($this);
         parent::preRenderRecursive();
         $stack->pop();
     } else {
         parent::preRenderRecursive();
     }
 }
TControl