extjs 4 网格第一次加载时显示不正确
Posted
技术标签:
【中文标题】extjs 4 网格第一次加载时显示不正确【英文标题】:extjs 4 grid is not displayed correctly the first time it loads 【发布时间】:2013-09-04 05:48:27 【问题描述】:我有以下问题。我有一个带有自定义行高的网格,它是用 css 设置的。
我的css:
.blubb>td
overflow: hidden;
padding: 3px 6px;
white-space: nowrap;
height: 27px !important;
在 getRow 类中,我将此类分配给行。这在我第二次加载网格时效果很好。当我第一次加载网格时,它看起来像这样:
所以看起来 Css 规则不会应用于行,但是为什么当我第二次加载网格时会应用它们?您还应该知道,前 4 列是锁定的,所以这是一个锁定的网格。有人可以帮我解决这个问题吗?提前谢谢!
【问题讨论】:
【参考方案1】:您可以在Ext.grid.column.Column
see here 中使用tdCls
属性,而不是使用getRow
,或者您可以定义一个自定义列:
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;
);
【讨论】:
以上是关于extjs 4 网格第一次加载时显示不正确的主要内容,如果未能解决你的问题,请参考以下文章
VB.net DataGridView 更改数据时显示不正确
JCrop - JCrop 持有人在移动/调整选择时显示不正确的图像