如何:自动调整GridPanel列宽+读取Ext JS4中网格中的所有列值

时间:2011-08-30 16:26:25

标签: javascript extjs4 gridpanel

如何:自动调整GridPanel列宽+读取Ext JS4中网格中的所有列值

问题1:无论如何,我可以自动设置gridpanel列宽, 基于重新构造的列数据值长度(列宽=最大数据值 字符串长度)

问题2:要实现上述(以及其他原因),我需要知道如何获得价值 特别是网格列?一旦我知道了逻辑,就应该将其作为列实现 渲染器功能?每次都会调用列渲染器函数,即数据 记录被读取(然后是它的过度杀伤)?,在这种情况下是否还有其他任何我可以覆盖的功能?

大多数解决方案(网格列宽计算器, autoResizeColumns等)我在网上找到以前的版本,我使用的是EXTJS 4版本。

提前致谢 斯科特

3 个答案:

答案 0 :(得分:1)

实际上有一个Extjs 4插件可根据内容的宽度和标题自动调整网格列的大小。

以下是链接:Extjs 4 column auto resize plugin

答案 1 :(得分:0)

  1. 不幸的是,没有。您最好的选择是为通常固定的数据设置指定的宽度,然后使用flex设置其他列。 (或者写/等待插件)。

  2. 值未存储在grid中,它们位于grid的{​​{1}}中。您只需循环问题中的store并从指定列中获取所有值。例如:

    store

答案 2 :(得分:0)

我找到了一个使用CSS包装Columns的临时修复程序,如下所述: ExtJS 4 - Wrapping the column headers in grid panel

将以下内容添加到ext js css

.x-column-header-inner {
    line-height: normal;
    padding-top: 3px !important;
    padding-bottom: 3px !important;
    text-align: center;
    top: 20%;
}

.x-column-header-inner .x-column-header-text {
    white-space: normal;
}