【问题标题】:How to add additional rows to Tapestry Grid?如何向 Tapestry Grid 添加额外的行?
【发布时间】:2013-10-02 08:40:16
【问题描述】:

我有一个网格及其 GridDataSource。但是,我想在所有其他网格下显示该网格的一列。

示例如下:

到目前为止我有这个:

| Column 1 | Column 2 | Column 3 | Column 4 | Column 5 |
========================================================
| Data 11  | Data 12  | Data 13  | Data 14  | Data 15  |
--------------------------------------------------------
| Data 21  | Data 22  | Data 23  | Data 24  | Data 25  |
--------------------------------------------------------

我想实现这个:

| Column 1 | Column 2 | Column 3 | Column 4 |
=============================================
| Data 11  | Data 12  | Data 13  | Data 14  |
|                  Data 15                  |
---------------------------------------------
| Data 21  | Data 22  | Data 23  | Data 24  |
|                  Data 25                  |
---------------------------------------------

我正在考虑尝试在前 4 个列单元格之后添加 <tr> 并将我的 DataX5 放入其中,但这让我无处可去。

【问题讨论】:

    标签: java datagrid row tapestry tabular


    【解决方案1】:

    您可以使用我的 griddecorator mixin 并将 GridRowDecorator 应用于每一行。装饰器在当前行之后创建一个新行并将最后一个元素移动到新行。

    如果没有,请创建您自己的 mixin,它会在网格渲染后调整 DOM。您可能想看看我的 gridcollapse mixin,我在其中移动列和行并添加行跨度。

    【讨论】:

    • 你先生,是一个灵感 :)
    【解决方案2】:

    另一种略显狡猾的方法是使用 outputRaw 和自定义单元格来绕过 Tapestry 正确形成的 XML 要求。

    例如

    <t:grid source="..." value="current">
       <p:column5Cell>     
          <t:outputRaw value="&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan='4'&gt;" />
          ${current.column5}
       </p:column5Cell>
    </t:grid>
    

    【讨论】:

    • 只是一个简单的问题。如果我这样做,ajax 更新不起作用。原因:org.apache.tapestry5.corelib.components.GridColumns.setupRender(GridColumns.java:112) 处的 java.lang.NullPointerException
    • 你指的是inplace="true"还是你自己的自定义ajax事件?如果不查看代码(或知道您使用的是哪个版本的挂毯),很难知道。似乎嵌套的 GridColumns 组件正在尝试呈现,但 Grid 或数据模型为空。你是如何存储你的模型的?闪光持久性?也许您需要在 ajax 事件中重新填充模型?
    • 再一次,我觉得自己像个白痴。我不小心删除了管理我的模型的一行代码。 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-08-18
    • 1970-01-01
    • 1970-01-01
    • 2013-07-20
    • 2017-06-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多