1

我的智能 gwt listgrid 按其列之一分组。如果我想向网格中的 a 组添加新行,请单击该组和添加按钮。添加一行作为网格的最后一行以进行编辑,而与分组无关。保存该行后,它会显示在正确的组中。有没有办法将新行添加到同一组中进行编辑而不是最后一行?

4

1 回答 1

1

如果您想使用挂起的编辑,您必须使用 TreeGrid 而不是 ListGrid。使用底层树,您可以通过调用将新记录添加到专用 TreeNode:

tree.add(node, parent);

要获得与分组 ListGrid 相似的外观和感觉,您需要稍微自定义 TreeGrid:

setShowOpenIcons(false);
setShowDropIcons(false);
setFolderIcon(null);
setNodeIcon(null);

通过覆盖方法:

@Override
protected String getCellStyle(ListGridRecord record, int rowNum, int colNum) {
    if (data.isFolder((TreeNode) record)) {
        return "myOwnHeader";
    }
    return super.getCellStyle(record, rowNum, colNum);
}

您可以为所有标题定义自定义样式,如下所示:

.myOwnHeader{
    border-bottom: 1px solid #8299B8;
    color: #3764A3;
    font-family: Tahoma,Verdana,sans-serif;
    font-weight: bold;
}
于 2012-11-19T23:33:45.580 回答