Class PropertyColumn<T,​S>

  • Type Parameters:
    T - The Model object type
    S - the type of the sort property
    All Implemented Interfaces:
    Serializable, ICellPopulator<T>, IExportableColumn<T,​S>, IColumn<T,​S>, IStyledColumn<T,​S>, org.apache.wicket.model.IDetachable, org.apache.wicket.util.io.IClusterable
    Direct Known Subclasses:
    FilteredPropertyColumn

    public class PropertyColumn<T,​S>
    extends AbstractColumn<T,​S>
    implements IExportableColumn<T,​S>
    A convenience implementation of column that adds a label to the cell whose model is determined by the provided wicket property expression (same as used by PropertyModel) that is evaluated against the current row's model object

    Example

     columns[0] = new PropertyColumn(new Model<String>("First Name"), "name.first");
     
    The above will attach a label to the cell with a property model for the expression "name.first"
    Author:
    Igor Vaynberg ( ivaynberg )
    See Also:
    PropertyModel, Serialized Form
    • Constructor Detail

      • PropertyColumn

        public PropertyColumn​(org.apache.wicket.model.IModel<String> displayModel,
                              S sortProperty,
                              String propertyExpression)
        Creates a property column that is also sortable
        Parameters:
        displayModel - display model
        sortProperty - sort property
        propertyExpression - wicket property expression used by PropertyModel
      • PropertyColumn

        public PropertyColumn​(org.apache.wicket.model.IModel<String> displayModel,
                              String propertyExpression)
        Creates a non sortable property column
        Parameters:
        displayModel - display model
        propertyExpression - wicket property expression
        See Also:
        PropertyModel
    • Method Detail

      • populateItem

        public void populateItem​(org.apache.wicket.markup.repeater.Item<ICellPopulator<T>> item,
                                 String componentId,
                                 org.apache.wicket.model.IModel<T> rowModel)
        Implementation of populateItem which adds a label to the cell whose model is the provided property expression evaluated against rowModelObject
        Specified by:
        populateItem in interface ICellPopulator<T>
        Parameters:
        item - the item representing the current table cell being rendered
        componentId - the id of the component used to render the cell (only one component should be added to the cell)
        rowModel - the model of the row item being rendered. this model usually contains the model provided by the data provider.
        See Also:
        ICellPopulator.populateItem(Item, String, IModel)
      • getDataModel

        public org.apache.wicket.model.IModel<?> getDataModel​(org.apache.wicket.model.IModel<T> rowModel)
        Factory method for generating a model that will generated the displayed value. Typically the model is a property model using the propertyExpression specified in the constructor.
        Specified by:
        getDataModel in interface IExportableColumn<T,​S>
        Parameters:
        rowModel -
        Returns:
        model