1

我有以下问题。我有一个自定义行高的网格,它是用 css 设置的。

我的CSS:

.blubb>td {
    overflow: hidden;
    padding: 3px 6px;
    white-space: nowrap;
    height: 27px !important;
}

在 getRow 类中,我将此类分配给行。这在我第二次加载网格时效果很好。当我第一次加载网格时,它看起来像这样:

在此处输入图像描述

所以看起来Css规则不会应用于行,但是为什么当我第二次加载网格时会应用它们?您还应该知道,前 4 列是锁定的,所以这是一个锁定的网格。有人可以帮我解决这个问题吗?提前谢谢!

4

1 回答 1

0

而不是使用getRow,您可以使用您在此处看到tdCls的属性,或者您可以定义一个自定义列:Ext.grid.column.Column

Ext.define('Ext.ux.grid.StyleColumn', {
    extend: 'Ext.grid.column.Column',
    alias: 'widget.stylecolumn',
    /* author: Alexander Berg, Hungary */

    defaultRenderer: function(value, metadata, record, rowIndex, colIndex, store, view) {
        var column = view.getGridColumns()[colIndex];
        //we can use different classes in each cell
        if (record.data.tdCls) {
            metadata.tdCls = record.data.tdCls;
        //we can use different classes in each column
        } else if (column.tdCls) {
            metadata.tdCls = record.data.tdCls;
        //we can use different classes in each grid (you can define it in viewConfig)
        } else if (view.rowCls) {
            metadata.tdCls = view.rowCls;
        //we can add a default class
        } else {
            metadata.tdCls = 'mydefault';
        }       
        return value;
    }
});
于 2013-09-04T08:36:18.353 回答