View Source

h3. Overview
_Column_ renders an HTML td element.

Features of the table and dependant components include:
* Cell Selection, Multiple and Single
* Row Selection, Multiple and Single
* Row Editing
* Row Panel Expansion
* Row Sub-row Expansion
* Per-Row Feature Configuration
* Filtering, Per-Column and Global
* Sorting, Multiple and Single Column
* Column Reordering
* Column Resizing
* Column Visibility
* Column Stacking
* Column Configuration Panel
* Pagination
* Scrolling (incl. Lazy Mode)
* Lazy Loading Integration
* Select, Edit and Filter Event Listeners
* Column, Row Spanning Headers & Footers
* Optional Application-bound State
** Rows (selection, expansion, etc.)
** Filtering
** Sorting
** Column Reordering
** Pagination




h3. General Usage
{code}
<ice:column headerText="Expansion">
<ice:expansionToggler />
</ice:column>

<ice:column headerText="UPC">
<h:outputText value="#{track.upc}"/>
</ice:column>

<ice:column headerText="Artist">
<h:outputText value="#{track.artist}" />
</ice:column>

<ice:column headerText="Album">
<h:outputText value="#{track.album}"/>
</ice:column>

<ice:column headerText="Name">
<h:outputText value="#{track.name}"/>
</ice:column>
{code}





h3. Component Documentation

{info:title=TLD Documentation}This section covers attributes signifigant to the conventional row selection / pagination / expandable panel sample above. For further reference on the features listed in the overview, see the [related components section|DataTable#related], the [section related to lazy loading|DataTable#lazy] and the [complete taglib|http://www.icefaces.org/docs/v2_latest/ace/tld/ace/dataTable.html] & [API] documentation for this component.{info}

{panel}
*var* - Name of a request-scope attribute under which the model data for the current row will be exposed.
{panel}

{panel}
*value* - The model data for this table. Expected type is a List or DataModel. Lazy loading requires an instance of the LazyDataModel object. Sub-row expansion requires a model of type List<Map.Entry<Object, List>> where the Entry object make up the nodes of a tree; with the key being the value, and the List as possible child nodes.
{panel}

{panel}
*stateMap* - Optionally application-bound RowStateMap object. Instantiated by the user or the component, allows app-level manipulation of row properties like selectability, visibility and expansion. Maps from table model objects to RowState objects that keep state for component features. See the [RowStateMap API] for full details.
{panel}

{panel}
*paginator* - Boolean indicating the use of pagination on this table. Default is false.
{panel}

{panel}
*rows* - Number of rows to display per page. Default is 0, to show all rows.
{panel}

{panel}
*update* - Space separated list of component id(s) to be updated following row selection or deselection. These can be independently set using the *onRowSelectionUpdate* and *onRowUnselectionUpdate*.
{panel}

{panel}
*rowSelectListener* - Method reference called whenever a table element is selected. The method receives a single argument, SelectEvent.
{panel}

{panel}
*rowUnselectListener* - Method reference called whenever a table element is selected. The method receives a single argument, UnselectEvent.
{panel}

{panel}
*onRowSelectComplete* - A Javascript statement to evaluate following a ajax row selection event. The above uses the included ICEfaces jQuery implementation to highlight the updated component.
{panel}



{info:title=Component Documentation}This section covers components signifigant to the conventional row selection / pagination / expandable panel sample above. For further reference on the features listed in the overview, see the [related components section|DataTable#related], the [section related to lazy loading|DataTable#lazy] and the [complete taglib|http://www.icefaces.org/docs/v2_latest/ace/tld/ace/dataTable.html] & [API] documentation for this component.{info}

{panel}
_column_ - Renders a td element (unless stacked) that represents a single column of data within a parent DataTable container. Stacking a column causes it render in the bottom half of the column previous to it. HeaderText defines a simple header in lieu of a facet or _ColumnGroup_.
{panel}


h3. JavaScript APIs / Client Behaviours

Not applicable to this component. It has no JS instance of it's own, rather being part of the overall DataTable JS object.

{anchor:lazy}
h3. Lazy Loading

{anchor:related}
h3. Related Components
* _[DataTable|DataTable]_
* _[ColumnGroup|ColumnGroup]_
* _[CellEditor|CellEditor]_
* _[Row|Row]_
* _[RowEditor|RowEditor]_
* _[ExpansionToggler|ExpansionToggler]_
* _[TableConfigPanel|TableConfigPanel]_
* _[DataExporter|DataExporter]_

h3. Keyboard and ARIA support
The only feature using keyboard navigation on the column is editing.

h3. Known Issues

h3. Other Resources