Class TRepeater

Description

Implements interfaces:

TRepeater class

TRepeater displays its content defined in templates repeatedly based on the given data specified by the DataSource or DataSourceID property. The templates can contain static text, controls and special tags.

The HeaderTemplate property specifies the content template that will be displayed at the beginning, while FooterTemplate at the end. If present, these two templates will only be rendered when the repeater is given non-empty data. In this case, for each data item the content defined by ItemTemplate will be generated and displayed once. If AlternatingItemTemplate is not empty, then the corresponding content will be displayed alternatively with that in ItemTemplate. The content in SeparatorTemplate, if not empty, will be displayed between items.

You can retrive the repeated contents by the Items property. The header and footer items can be accessed by Header and Footer properties, respectively.

When TRepeater creates an item, it will raise an OnItemCreated so that you may customize the newly created item. When databinding is performed by TRepeater, for each item once it has finished databinding, an OnItemDataBound event will be raised.

TRepeater raises an OnItemCommand whenever a button control within some repeater item raises a Command event. Therefore, you can handle all sorts of Command event in a central place by writing an event handler for OnItemCommand.

Located in /Web/UI/WebControls/TRepeater.php (line 58)

TComponent
   |
   --TApplicationComponent
      |
      --TControl
         |
         --TWebControl
            |
            --TDataBoundControl
               |
               --TRepeater
Class Constant Summary
 IT_ALTERNATINGITEM = 'AlternatingItem'
 IT_EMPTY = 'Empty'
 IT_FOOTER = 'Footer'
 IT_HEADER = 'Header'
 IT_ITEM = 'Item'
 IT_SEPARATOR = 'Separator'
Method Summary
Methods
addParsedObject (line 112)

No body content should be added to repeater.

This method is invoked when body content is parsed and added to this control.

  • access: public
void addParsedObject (mixed $object)
  • mixed $object: body content to be added

Redefinition of:
TControl::addParsedObject()
Processes an object that is created during parsing template.
bubbleEvent (line 474)

This method overrides parent's implementation to handle onItemCommand event which is bubbled from TRepeaterItem child controls.

This method should only be used by control developers.

  • return: whether the event bubbling should stop here.
  • access: public
boolean bubbleEvent (TControl $sender, TEventParameter $param)

Redefinition of:
TControl::bubbleEvent()
This method responds to a bubbled event.
createItem (line 297)

Creates a repeater item instance based on the item type and index.

  • return: created repeater item
  • access: protected
TRepeaterItem createItem (integer $itemIndex, string $itemType)
  • integer $itemIndex: zero-based item index
  • string $itemType: item type, may be 'Header', 'Footer', 'Empty', 'Item', 'Separator', 'AlternatingItem'.
getAlternatingItemTemplate (line 139)
  • return: the alternative template string for the item
  • access: public
ITemplate getAlternatingItemTemplate ()
getDataFieldValue (line 544)

Returns the value of the data at the specified field.

If data is an array, TMap or TList, the value will be returned at the index of the specified field. If the data is a component with a property named as the field name, the property value will be returned. Otherwise, an exception will be raised.

  • return: data value at the specified field
  • access: protected
  • throws: TInvalidDataValueException if the data is invalid
mixed getDataFieldValue (mixed $data, mixed $field)
  • mixed $data: data item
  • mixed $field: field name
getDataKeyField (line 265)
  • return: the field of the data source that provides the keys of the list items.
  • access: public
string getDataKeyField ()
getDataKeys (line 281)
  • return: the keys used in the data listing control.
  • access: public
TList getDataKeys ()
getEmptyTemplate (line 199)
  • return: the template applied when no data is bound to the repeater
  • access: public
ITemplate getEmptyTemplate ()
getFooter (line 247)
  • return: the footer item
  • access: public
TRepeaterItem getFooter ()
getFooterTemplate (line 179)
  • return: the footer template
  • access: public
ITemplate getFooterTemplate ()
getHeader (line 239)
  • return: the header item
  • access: public
TRepeaterItem getHeader ()
getHeaderTemplate (line 159)
  • return: the header template
  • access: public
ITemplate getHeaderTemplate ()
getItems (line 255)
getItemTemplate (line 119)
  • return: the template for repeater items
  • access: public
ITemplate getItemTemplate ()
getSeparatorTemplate (line 219)
  • return: the separator template
  • access: public
ITemplate getSeparatorTemplate ()
initializeItem (line 339)

Initializes a repeater item.

The item is added as a child of the repeater and the corresponding template is instantiated within the item.

  • access: protected
void initializeItem (TRepeaterItem $item)
loadState (line 383)

Loads item count information from viewstate.

This method is invoked right after control state is loaded.

  • access: public
void loadState ()

Redefinition of:
TControl::loadState()
This method is invoked right after the control has loaded its state.
onItemCommand (line 528)

Raises OnItemCommand event.

This method is invoked after a button control in a template raises Command event. The TRepeaterItem control responsible for the event can be determined from the event parameter. The event parameter also contains the information about the initial sender of the Command event, command name and command parameter. You may override this method to provide customized event handling. Be sure to call parent's implementation so that event handlers have chance to respond to the event.

  • access: public
void onItemCommand (TRepeaterCommandEventParameter $param)
onItemCreated (line 495)

Raises OnItemCreated event.

This method is invoked after a repeater item is created and instantiated with template, but before added to the page hierarchy. The TRepeaterItem control responsible for the event can be determined from the event parameter. If you override this method, be sure to call parent's implementation so that event handlers have chance to respond to the event.

  • access: public
void onItemCreated (TRepeaterItemEventParameter $param)
onItemDataBound (line 509)

Raises OnItemDataBound event.

This method is invoked right after an item is data bound. The TRepeaterItem control responsible for the event can be determined from the event parameter. If you override this method, be sure to call parent's implementation so that event handlers have chance to respond to the event.

  • access: public
void onItemDataBound (TRepeaterItemEventParameter $param)
performDataBinding (line 435)

Performs databinding to populate repeater items from data source.

This method is invoked by dataBind(). You may override this function to provide your own way of data population.

  • access: protected
void performDataBinding (Traversable $data)
  • Traversable $data: the data

Redefinition of:
TDataBoundControl::performDataBinding()
render (line 361)

Renders the repeater.

This method overrides the parent implementation by rendering the body content as the whole presentation of the repeater. Outer tag is not rendered.

  • access: public
void render (THtmlWriter $writer)

Redefinition of:
TWebControl::render()
Renders the control.
reset (line 394)

Clears up all items in the repeater.

  • access: public
void reset ()
restoreItemsFromViewState (line 405)

Creates repeater items based on viewstate information.

  • access: protected
void restoreItemsFromViewState ()
saveState (line 370)

Saves item count in viewstate.

This method is invoked right before control state is to be saved.

  • access: public
void saveState ()

Redefinition of:
TControl::saveState()
This method is invoked when control state is to be saved.
setAlternatingItemTemplate (line 148)
  • access: public
  • throws: TInvalidDataTypeException if the input is not an ITemplate or not null.
void setAlternatingItemTemplate (ITemplate $value)
  • ITemplate $value: the alternative item template
setDataKeyField (line 273)
  • access: public
void setDataKeyField (string $value)
  • string $value: the field of the data source that provides the keys of the list items.
setEmptyTemplate (line 208)
  • access: public
  • throws: TInvalidDataTypeException if the input is not an ITemplate or not null.
void setEmptyTemplate (ITemplate $value)
  • ITemplate $value: the template applied when no data is bound to the repeater
setFooterTemplate (line 188)
  • access: public
  • throws: TInvalidDataTypeException if the input is not an ITemplate or not null.
void setFooterTemplate (ITemplate $value)
setHeaderTemplate (line 168)
  • access: public
  • throws: TInvalidDataTypeException if the input is not an ITemplate or not null.
void setHeaderTemplate (ITemplate $value)
setItemTemplate (line 128)
  • access: public
  • throws: TInvalidDataTypeException if the input is not an ITemplate or not null.
void setItemTemplate (ITemplate $value)
  • ITemplate $value: the template for repeater items
setSeparatorTemplate (line 228)
  • access: public
  • throws: TInvalidDataTypeException if the input is not an ITemplate or not null.
void setSeparatorTemplate (ITemplate $value)

Inherited Methods

Inherited From TDataBoundControl

TDataBoundControl::dataBind()
TDataBoundControl::dataSourceViewChanged()
TDataBoundControl::determineDataSource()
TDataBoundControl::ensureDataBound()
TDataBoundControl::getData()
TDataBoundControl::getDataMember()
TDataBoundControl::getDataSource()
TDataBoundControl::getDataSourceID()
TDataBoundControl::getDataSourceView()
TDataBoundControl::getInitialized()
TDataBoundControl::getIsDataBound()
TDataBoundControl::getRequiresDataBinding()
TDataBoundControl::getSelectParameters()
TDataBoundControl::getUsingDataSourceID()
TDataBoundControl::onDataBound()
TDataBoundControl::onDataSourceChanged()
TDataBoundControl::onInit()
TDataBoundControl::onPreRender()
TDataBoundControl::pagePreLoad()
TDataBoundControl::performDataBinding()
TDataBoundControl::setDataMember()
TDataBoundControl::setDataSource()
TDataBoundControl::setDataSourceID()
TDataBoundControl::setInitialized()
TDataBoundControl::setIsDataBound()
TDataBoundControl::setRequiresDataBinding()
TDataBoundControl::validateDataSource()

Inherited From TWebControl

TWebControl::addAttributesToRender()
TWebControl::copyBaseAttributes()
TWebControl::createStyle()
TWebControl::getAccessKey()
TWebControl::getBackColor()
TWebControl::getBorderColor()
TWebControl::getBorderStyle()
TWebControl::getBorderWidth()
TWebControl::getCssClass()
TWebControl::getFont()
TWebControl::getForeColor()
TWebControl::getHasStyle()
TWebControl::getHeight()
TWebControl::getStyle()
TWebControl::getTabIndex()
TWebControl::getTagName()
TWebControl::getToolTip()
TWebControl::getWidth()
TWebControl::render()
TWebControl::renderBeginTag()
TWebControl::renderContents()
TWebControl::renderEndTag()
TWebControl::setAccessKey()
TWebControl::setBackColor()
TWebControl::setBorderColor()
TWebControl::setBorderStyle()
TWebControl::setBorderWidth()
TWebControl::setCssClass()
TWebControl::setForeColor()
TWebControl::setHeight()
TWebControl::setStyle()
TWebControl::setTabIndex()
TWebControl::setToolTip()
TWebControl::setWidth()

Inherited From TControl

TControl::__construct()
TControl::addedControl()
TControl::addParsedObject()
TControl::applyStyleSheetSkin()
TControl::autoBindProperty()
TControl::autoDataBindProperties()
TControl::bindProperty()
TControl::broadcastEvent()
TControl::broadcastEventInternal()
TControl::bubbleEvent()
TControl::clearChildState()
TControl::clearControlState()
TControl::clearNamingContainer()
TControl::clearViewState()
TControl::createChildControls()
TControl::createControlCollection()
TControl::createdOnTemplate()
TControl::dataBind()
TControl::dataBindChildren()
TControl::dataBindProperties()
TControl::ensureChildControls()
TControl::findControl()
TControl::findControlsByID()
TControl::findControlsByType()
TControl::focus()
TControl::getAdapter()
TControl::getAllowChildControls()
TControl::getAttribute()
TControl::getAttributes()
TControl::getChildControlsCreated()
TControl::getClientID()
TControl::getControls()
TControl::getControlStage()
TControl::getControlState()
TControl::getEnabled()
TControl::getEnableTheming()
TControl::getEnableViewState()
TControl::getHasAdapter()
TControl::getHasAttributes()
TControl::getHasControls()
TControl::getID()
TControl::getNamingContainer()
TControl::getPage()
TControl::getParent()
TControl::getRegisteredObject()
TControl::getSkinID()
TControl::getSourceTemplateControl()
TControl::getTemplateControl()
TControl::getUniqueID()
TControl::getViewState()
TControl::getVisible()
TControl::hasAttribute()
TControl::initRecursive()
TControl::isDescendentOf()
TControl::isObjectRegistered()
TControl::loadRecursive()
TControl::loadState()
TControl::loadStateRecursive()
TControl::onDataBinding()
TControl::onInit()
TControl::onLoad()
TControl::onPreRender()
TControl::onUnload()
TControl::preRenderRecursive()
TControl::raiseBubbleEvent()
TControl::registerObject()
TControl::removeAttribute()
TControl::removedControl()
TControl::render()
TControl::renderChildren()
TControl::renderControl()
TControl::saveState()
TControl::saveStateRecursive()
TControl::setAdapter()
TControl::setAttribute()
TControl::setChildControlsCreated()
TControl::setControlStage()
TControl::setControlState()
TControl::setEnabled()
TControl::setEnableTheming()
TControl::setEnableViewState()
TControl::setID()
TControl::setPage()
TControl::setSkinID()
TControl::setTemplateControl()
TControl::setViewState()
TControl::setVisible()
TControl::traverseChildControls()
TControl::unbindProperty()
TControl::unloadRecursive()
TControl::unregisterObject()
TControl::__get()

Inherited From TApplicationComponent

TApplicationComponent::getApplication()
TApplicationComponent::getRequest()
TApplicationComponent::getResponse()
TApplicationComponent::getService()
TApplicationComponent::getSession()
TApplicationComponent::getUser()
TApplicationComponent::publishAsset()
TApplicationComponent::publishFilePath()

Inherited From TComponent

TComponent::attachEventHandler()
TComponent::canGetProperty()
TComponent::canSetProperty()
TComponent::detachEventHandler()
TComponent::evaluateExpression()
TComponent::evaluateStatements()
TComponent::getEventHandlers()
TComponent::getSubProperty()
TComponent::hasEvent()
TComponent::hasEventHandler()
TComponent::hasProperty()
TComponent::raiseEvent()
TComponent::setSubProperty()
TComponent::__get()
TComponent::__set()
Class Constants
IT_ALTERNATINGITEM = 'AlternatingItem' (line 68)
IT_EMPTY = 'Empty' (line 65)
IT_FOOTER = 'Footer' (line 64)
IT_HEADER = 'Header' (line 63)

Repeater item types

IT_ITEM = 'Item' (line 66)
IT_SEPARATOR = 'Separator' (line 67)

Inherited Constants

Inherited from TControl

Documentation generated on Sun, 04 Jun 2006 19:00:12 -0400 by phpDocumentor 1.3.0RC4