## Class TListBox

Description

Implements interfaces:

- IPostBackDataHandler
- IValidatable

TListBox class

TListBox displays a list box on a Web page that allows single or multiple selection. The list box allows multiple selections if SelectionMode is TListSelectionMode::Multiple. It takes single selection only if Single. The property Rows specifies how many rows of options are visible at a time. See TListControl for inherited properties.

Since v3.0.3, TListBox starts to support optgroup. To specify an option group for a list item, set a Group attribute with it,

      $listitem->Attributes->Group="Group Name";
      // or <com:TListItem Attributes.Group="Group Name" .../> in template

- since: 3.0
- version: $Id: TListBox.php 2541 2008-10-21 15:05:13Z qiang.xue $
- author: Qiang Xue <qiang.xue@gmail.com>

Located in /Web/UI/WebControls/TListBox.php (line 39)

    TComponent
       |
       --TApplicationComponent
          |
          --TControl
             |
             --TWebControl
                |
                --TDataBoundControl
                   |
                   --TListControl
                      |
                      --TListBox

Direct descendents

Class | Description
--- | ---
TActiveListBox | TActiveListBox class.

Method Summary
void addAttributesToRender (THtmlWriter $writer)
string getClientClassName ()
boolean getDataChanged ()
boolean getIsMultiSelect ()
bool getIsValid ()
integer getRows ()
TListSelectionMode getSelectionMode ()
mixed getValidationPropertyValue ()
boolean loadPostData (string $key, array $values)
void onPreRender (mixed $param)
void raisePostDataChangedEvent ()
void setIsValid (bool $value)
void setRows (integer $value)
void setSelectionMode (TListSelectionMode $value)
Methods
addAttributesToRender (line 49)

Adds attribute name-value pairs to renderer.

This method overrides the parent implementation with additional list box specific attributes.

- access: protected

void addAttributesToRender (THtmlWriter $writer)

- THtmlWriter $writer: the writer used for the rendering purpose

Redefinition of:

TListControl::addAttributesToRender()
  Adds attributes to renderer.

Redefined in descendants as:

- TActiveListBox::addAttributesToRender() : Ensure that the ID attribute is rendered and registers the javascript code for initializing the active control.

getClientClassName (line 65)

Gets the name of the javascript class responsible for performing postback for this control.

This method overrides the parent implementation.

- return: the javascript class name
- access: protected

string getClientClassName ()

Redefinition of:

TListControl::getClientClassName()
  Gets the name of the javascript class responsible for performing postback for this control.

Redefined in descendants as:

- TActiveListBox::getClientClassName() : Javascript client class for this control.

getDataChanged (line 167)

Returns a value indicating whether postback has caused the control data change.

This method is required by the IPostBackDataHandler interface.

- return: whether postback has caused the control data change. False if the page is not in postback mode.
- access: public

boolean getDataChanged ()
getIsMultiSelect (line 175)

- return: whether this control allows multiple selection
- access: protected

boolean getIsMultiSelect ()

Redefinition of:

TListControl::getIsMultiSelect()

getIsValid (line 230)

Returns true if this control validated successfully.

Defaults to true.

- return: wether this control validated successfully.
- access: public

bool getIsValid ()
getRows (line 183)

- return: the number of rows to be displayed in the list control
- access: public

integer getRows ()
getSelectionMode (line 202)

- return: the selection mode (Single, Multiple). Defaults to TListSelectionMode::Single.
- access: public

TListSelectionMode getSelectionMode ()
getValidationPropertyValue (line 220)

Returns the value to be validated.

This methid is required by IValidatable interface.

- return: the value of the property to be validated.
- access: public

mixed getValidationPropertyValue ()
loadPostData (line 89)

Loads user input data.

This method is primarly used by framework developers.

- return: whether the data of the component has been changed
- access: public

boolean loadPostData (string $key, array $values)

- string $key: the key that can be used to retrieve data from the input data collection
- array $values: the input data collection

onPreRender (line 75)

Registers the list control to load post data on postback.

This method overrides the parent implementation.

- access: public

void onPreRender (mixed $param)

- mixed $param: event parameter

Redefinition of:

TDataBoundControl::onPreRender()
  Ensures any pending databind is performed.

Redefined in descendants as:

- TActiveListBox::onPreRender() : Updates the client-side options if the item list has changed after the OnLoad event.

raisePostDataChangedEvent (line 155)

Raises postdata changed event.

This method is required by IPostBackDataHandler interface. It is invoked by the framework when SelectedIndices property is changed on postback. This method is primarly used by framework developers.

- access: public

void raisePostDataChangedEvent ()
setIsValid (line 237)

- access: public

void setIsValid (bool $value)

- bool $value: wether this control is valid.

setRows (line 191)

- access: public

void setRows (integer $value)

- integer $value: the number of rows to be displayed in the list control

setSelectionMode (line 210)

- access: public

void setSelectionMode (TListSelectionMode $value)

- TListSelectionMode $value: the selection mode

Redefined in descendants as:

- TActiveListBox::setSelectionMode() : Sets the selection mode of the list control (Single, Multiple) on the client-side if the setEnableUpdate property is set to true.

#### Inherited Methods

Inherited From TListControl

> TListControl::addAttributesToRender()
> TListControl::addParsedObject()
> TListControl::clearSelection()
> TListControl::createListItemCollection()
> TListControl::formatDataValue()
> TListControl::getAppendDataBoundItems()
> TListControl::getAutoPostBack()
> TListControl::getCausesValidation()
> TListControl::getClientClassName()
> TListControl::getData()
> TListControl::getDataGroupField()
> TListControl::getDataTextField()
> TListControl::getDataTextFormatString()
> TListControl::getDataValueField()
> TListControl::getEnableClientScript()
> TListControl::getHasItems()
> TListControl::getIsMultiSelect()
> TListControl::getItemCount()
> TListControl::getItems()
> TListControl::getPostBackOptions()
> TListControl::getPromptText()
> TListControl::getPromptValue()
> TListControl::getSelectedIndex()
> TListControl::getSelectedIndices()
> TListControl::getSelectedItem()
> TListControl::getSelectedValue()
> TListControl::getSelectedValues()
> TListControl::getTagName()
> TListControl::getText()
> TListControl::getValidationGroup()
> TListControl::loadState()
> TListControl::onSelectedIndexChanged()
> TListControl::onTextChanged()
> TListControl::performDataBinding()
> TListControl::renderClientControlScript()
> TListControl::renderContents()
> TListControl::renderPrompt()
> TListControl::saveState()
> TListControl::setAppendDataBoundItems()
> TListControl::setAutoPostBack()
> TListControl::setCausesValidation()
> TListControl::setData()
> TListControl::setDataGroupField()
> TListControl::setDataTextField()
> TListControl::setDataTextFormatString()
> TListControl::setDataValueField()
> TListControl::setEnableClientScript()
> TListControl::setPromptText()
> TListControl::setPromptValue()
> TListControl::setSelectedIndex()
> TListControl::setSelectedIndices()
> TListControl::setSelectedValue()
> TListControl::setSelectedValues()
> TListControl::setText()
> TListControl::setValidationGroup()

Inherited From TDataBoundControl

> TDataBoundControl::createPagedDataSource()
> TDataBoundControl::dataBind()
> TDataBoundControl::dataSourceViewChanged()
> TDataBoundControl::determineDataSource()
> TDataBoundControl::ensureDataBound()
> TDataBoundControl::getAllowCustomPaging()
> TDataBoundControl::getAllowPaging()
> TDataBoundControl::getCurrentPageIndex()
> TDataBoundControl::getDataMember()
> TDataBoundControl::getDataSource()
> TDataBoundControl::getDataSourceID()
> TDataBoundControl::getDataSourceView()
> TDataBoundControl::getInitialized()
> TDataBoundControl::getIsDataBound()
> TDataBoundControl::getPageCount()
> TDataBoundControl::getPageSize()
> TDataBoundControl::getRequiresDataBinding()
> TDataBoundControl::getSelectParameters()
> TDataBoundControl::getUsingDataSourceID()
> TDataBoundControl::getVirtualItemCount()
> TDataBoundControl::onDataBound()
> TDataBoundControl::onDataSourceChanged()
> TDataBoundControl::onInit()
> TDataBoundControl::onPreRender()
> TDataBoundControl::pagePreLoad()
> TDataBoundControl::performDataBinding()
> TDataBoundControl::setAllowCustomPaging()
> TDataBoundControl::setAllowPaging()
> TDataBoundControl::setCurrentPageIndex()
> TDataBoundControl::setDataMember()
> TDataBoundControl::setDataSource()
> TDataBoundControl::setDataSourceID()
> TDataBoundControl::setInitialized()
> TDataBoundControl::setIsDataBound()
> TDataBoundControl::setPageSize()
> TDataBoundControl::setRequiresDataBinding()
> TDataBoundControl::setVirtualItemCount()
> TDataBoundControl::validateDataSource()

Inherited From TWebControl

> TWebControl::addAttributesToRender()
> TWebControl::clearStyle()
> TWebControl::copyBaseAttributes()
> TWebControl::createStyle()
> TWebControl::getAccessKey()
> TWebControl::getBackColor()
> TWebControl::getBorderColor()
> TWebControl::getBorderStyle()
> TWebControl::getBorderWidth()
> TWebControl::getCssClass()
> TWebControl::getDisplay()
> 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::setDisplay()
> TWebControl::setForeColor()
> TWebControl::setHeight()
> TWebControl::setStyle()
> TWebControl::setTabIndex()
> TWebControl::setToolTip()
> TWebControl::setWidth()

Inherited From TControl

> TControl::__construct()
> TControl::addedControl()
> TControl::addParsedObject()
> TControl::addToPostDataLoader()
> TControl::applyStyleSheetSkin()
> TControl::autoBindProperty()
> TControl::autoDataBindProperties()
> TControl::bindProperty()
> TControl::broadcastEvent()
> TControl::bubbleEvent()
> TControl::clearChildState()
> TControl::clearControlState()
> TControl::clearNamingContainer()
> TControl::clearViewState()
> TControl::convertUniqueIdToClientId()
> TControl::createChildControls()
> TControl::createControlCollection()
> 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::getCustomData()
> TControl::getEnabled()
> TControl::getEnableTheming()
> TControl::getEnableViewState()
> TControl::getHasAdapter()
> TControl::getHasAttributes()
> TControl::getHasChildInitialized()
> TControl::getHasControls()
> TControl::getHasInitialized()
> TControl::getHasLoaded()
> TControl::getHasLoadedPostData()
> TControl::getHasPreRendered()
> 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::setCustomData()
> TControl::setEnabled()
> TControl::setEnableTheming()
> TControl::setEnableViewState()
> TControl::setID()
> TControl::setPage()
> TControl::setSkinID()
> TControl::setTemplateControl()
> TControl::setViewState()
> TControl::setVisible()
> TControl::trackViewState()
> 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::addParsedObject()
> TComponent::attachEventHandler()
> TComponent::canGetProperty()
> TComponent::canSetProperty()
> TComponent::createdOnTemplate()
> 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

#### Inherited Constants

Inherited from TControl

> TControl::AUTOMATIC_ID_PREFIX
> TControl::CLIENT_ID_SEPARATOR
> TControl::CS_CHILD_INITIALIZED
> TControl::CS_CONSTRUCTED
> TControl::CS_INITIALIZED
> TControl::CS_LOADED
> TControl::CS_PRERENDERED
> TControl::CS_STATE_LOADED
> TControl::ID_FORMAT
> TControl::ID_SEPARATOR
> TControl::IS_CHILD_CREATED
> TControl::IS_CREATING_CHILD
> TControl::IS_DISABLE_THEMING
> TControl::IS_DISABLE_VIEWSTATE
> TControl::IS_ID_SET
> TControl::IS_SKIN_APPLIED
> TControl::IS_STYLESHEET_APPLIED
> TControl::RF_ADAPTER
> TControl::RF_AUTO_BINDINGS
> TControl::RF_CHILD_STATE
> TControl::RF_CONTROLS
> TControl::RF_CONTROLSTATE
> TControl::RF_DATA_BINDINGS
> TControl::RF_EVENTS
> TControl::RF_NAMED_CONTROLS
> TControl::RF_NAMED_CONTROLS_ID
> TControl::RF_NAMED_OBJECTS
> TControl::RF_SKIN_ID

Documentation generated on Mon, 22 Feb 2010 12:18:04 +0000 by phpDocumentor 1.3.0RC4