【问题标题】:Wicket 6 IColumn How the name can be of type other than string?Wicket 6 IColumn 名称如何可以是字符串以外的类型?
【发布时间】:2013-06-12 11:51:23
【问题描述】:

这个问题已经被问过 (Wicket 6 IColumn How the name can be of type other than string?),但没有得到回答。我用粗体突出了要回答的问题...

接口 IColumn 包含一个方法 getSortProperty(),它返回任何类型 S 的值。名称如何可以是字符串以外的类型?

    /**
     * Returns the name of the property that this header sorts. If null is returned the header will
     * be unsortable.
     * 
     * @return the sort property
     */

S getSortProperty();

http://ci.apache.org/projects/wicket/apidocs/6.0.x/org/apache/wicket/extensions/markup/html/repeater/data/table/IColumn.html

在 wicket 旧版本 6 中:

PropertyColumn<SomeClass> column = new PropertyColumn(Model.of("Header"), "sortProperty", "propertyExpression"); 

检票口 6:描述:

PropertyColumn(IModel<String> displayModel, S sortProperty, String propertyExpression);

示例:

PropertyColumn<SomeClass, Long> column = new PropertyColumn(Model.of("Header"), ?, "propertyExpression"); 

在地上写什么“?”

【问题讨论】:

    标签: java wicket wicket-6


    【解决方案1】:
    PropertyColumn<SomeClass, Long> column = new PropertyColumn(Model.of("Header"), 4l, "propertyExpression"); 
    

    例如如果 SortableDataProvider 能够按索引(此处为第 4 个)识别已排序的列,则可以使用此方法。

    【讨论】:

      【解决方案2】:

      sortProperty 是一个字符串,用于标识要排序的属性。因此,它将始终是一个字符串。

      例如,如果您的表位于 MyFirstSortableClass 的集合上,其中包含一个“日期”属性(类型为“日期”,具有相应的 getter/setter),您可以将“日期”设置为 sortProperty,以便为表选择 SortableDataProvider知道使用 MyFirstSortableClass 的 'date' 属性对列表进行排序。

      dataprovider 如何排序取决于它的实现,例如在我们的项目中,我们有两个 dataprovider,它们通过 order by 子句在数据库中排序,以及 dataprovider 通过 List.sort 或类似的东西在 java 中排序。

      【讨论】:

        猜你喜欢
        • 2022-01-12
        • 2013-12-11
        • 2017-04-30
        • 1970-01-01
        • 2011-09-17
        • 2019-06-14
        • 2020-09-29
        • 2016-03-09
        • 1970-01-01
        相关资源
        最近更新 更多