View Source

h3. Overview
_Column_ renders an HTML td element.

Features of the column and interacting components include:
* Row Editing
* Row Panel Expansion
* Row Sub-row Expansion
* Filtering
* Sorting
* Column Visibility
* Column Stacking
* Column Configuration Panel
* Edit and Filter Event Listeners
* Column, Row Spanning Headers & Footers
* Optional Application-bound State
** Filtering
** Sorting


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}
*sortBy* - Value expression defining the object this column will sort by.
{panel}

{panel}
*sortFunction* - Value expression for a Comparator<Object> that will be used to sort the objects referred to by *sortBy*. If this property is not defined, it is assumed that the objects referred to by *sortBy* implement the Comparable interface.
{panel}

{panel}
*sortPriority* - Priority of this column among columns of a multi-column sort, starting at 1. Available for binding in situations of application initated or application persisted sorted states. Having a non-null priority enables sorting for this column when applyFilters() is called on the DataTable.
{panel}

{panel}
*sortAscending* - Boolean value indicating if this sorted (as indicated by a set *sortPriority*) column is ascending.
{panel}

{panel}
*filterBy* - Value expression defining the object this column will filter by.
{panel}

{panel}
*filterValue* - Value of the filter input field. The input that will be used to filter the objects defined by *filterBy*.
{panel}

{panel}
*filterOptions* - A collection of SelectItem objects for use as filter choices.
{panel}

{panel}
*filterMatchMode* - Method of String comparison used to evaluate the filter, types available include: "contains", "exact", "startsWith", "endsWith"
{panel}

{panel}
*rowspan* - Defines the number of Row objects this Column should span. Only relevant on a Column used inside a ColumnGroup and Row component.
{panel}

{panel}
*colspan* - Defines the number of TD elements this Column should span. Only relevant on a Column used inside a ColumnGroup and Row component.
{panel}

{panel}
*headerText* - A plain text header with less effort than adding a facet.
{panel}

{panel}
*footerText* - A plain text footer with less effort than adding a facet.
{panel}

{panel}
*stacked* - When enabled, this column is rendered underneath the previous column. This column doesn't render it's own TD element.
{panel}

{panel}
*reorderable* - Boolean allowing per-column control of column ordering when the property reorderableColumns is enabled at the table level. This property is true by default.
{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}
_TableConfigPanel_ -
{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