2

我想在没有记录的情况下将分页工具栏的默认页面更改为 1 of 1 而不是 0 of 0 根据我的要求,用户可以使用显示第 1 页的分页工具栏手动将行添加到网格中,当行超过 10 时,它会移动到第 2 页。

4

1 回答 1

2

在 Ext 中,可以使用您自己的自定义版本重载像 Ext.toolbar.Paging 这样的组件。只需在您的定义中指定一个别名,您就可以像使用“本机控件”一样使用它。

为了确保该方法可行,我用一个简单的数据源设置了一个测试项目,并实现了足够多的替换定义,我可以看到在我的自定义定义中触发了“Ext.toolbar.Paging”.getPagingItems 方法。

从那时起,您可以替换原始方法定义中的代码,以允许自定义最小值,此外还有机会重载“updateInfo”方法,以确保在数据重新加载期间您不会进行自定义。

除了这两件事之外,您应该(通过相对较少的努力)能够在控件之上实现以支持根据网格的内容动态更改其值。

如果您查看 ux.data.PagingStore 的文档,您应该能够找出使用远程提供的存储与本地提供数据的存储的差异。

希望这对您有所帮助。

代码示例:

Ext.define(
    "Test.view.testview.TvPageBar",
    {
        extend: "Ext.toolbar.Paging",
        alias: "widget.tvpagebar",
        title: "Bob",
        strictInit: function () {
            "use strict";
            console.log("TvPageBar init");
        },
        getPagingItems: function () {
            console.log("getPagingItems", this);
            this.callParent(arguments);
        },
        initComponent: function () {
            this.strictInit();
            this.callParent(arguments);
        }
    }
);
于 2013-05-01T01:12:13.037 回答