如何在使用自定义商店时使网格列可编辑

时间:2013-08-02 14:30:24

标签: javascript rally appsdk2

我希望能够内联编辑网格列,因为它显示在AppSDK文档中的简单网格示例中 https://developer.help.rallydev.com/apps/2.0rc1/doc/#!/example/Grid 但是,如果使用自定义商店,则看起来默认情况下此功能不可用:

_createGrid: function(stories) {
     this.add({
        xtype: 'rallygrid',
        store: Ext.create('Rally.data.custom.Store', {
            data: stories,
            pageSize: 100
        }),
        columnCfgs: [
            {
               text: 'Formatted ID', dataIndex: 'FormattedID', xtype: 'templatecolumn',
                tpl: Ext.create('Rally.ui.renderer.template.FormattedIDTemplate')
            },
            {
                text: 'Name', dataIndex: 'Name'
            },
            //other columns...
        ]
    });
}

在我的应用中,当我点击名称时,该字段不会像简单网格示例中那样变得可编辑。

1 个答案:

答案 0 :(得分:0)

可以按如下方式修改代码以添加内联编辑功能: 将编辑器设置为'textfield'作为Name列,将grid的selType设置为'cellmodel',并实例化CellEditing插件。

_createGrid: function(stories) {
         this.add({
            xtype: 'rallygrid',
            store: Ext.create('Rally.data.custom.Store', {
                data: stories,
                pageSize: 100
            }),
            columnCfgs: [
                {
                   text: 'Formatted ID', dataIndex: 'FormattedID', xtype: 'templatecolumn',
                    tpl: Ext.create('Rally.ui.renderer.template.FormattedIDTemplate')
                },
                {
                    text: 'Name', dataIndex: 'Name', editor: 'textfield'
                }
        //other columns...
            ],
            selType: 'cellmodel',
            plugins: [
                Ext.create('Ext.grid.plugin.CellEditing', {
                clicksToEdit: 1
                })
            ]

        });
    }

请参阅Ext.grid.plugin.CellEditing here

上的文档