Сетка Ext JS со столбцом флажка - PullRequest
2 голосов
/ 22 июня 2011

У меня есть сетка на моей странице с установленной CheckboxModel. Он показывает имена и флажки, но я не знаю, как привязать логический столбец из магазина к столбцу из модели выбора. Я нашел примеры использования CheckColumn вместо этого, но это выдает ошибку, что у него нет конструктора. Должно быть изменение в v4. Буду очень признателен за помощь, пожалуйста.

Ext.define('Roles', {
    extend: 'Ext.data.Model',
    fields: ['Id', 'Name', 'Selected'],
    proxy: {
        type: 'ajax',
        url: '/tpn/Types/AjaxList',
        reader: {
            type: 'json',
            root: 'rows',
            totalProperty: 'total',
            successProperty: 'success'
        },
        listeners: {
            exception: function (proxy, type, action, options, response, arg) {
                Ext.MessageBox.alert('Error', Ext.decode(type.responseText).error);
            }
        }

    }
});

var roleStore = Ext.create('Ext.data.Store', {
    model: 'Roles'
});

var sm = Ext.create('Ext.selection.CheckboxModel');

var grid = Ext.create('Ext.grid.Panel', {
    store: roleStore,
    selModel: sm,
    columns: [{
        header: 'Name',
        dataIndex: 'Name',
        flex: 1
    }],
    renderTo: 'RoleGrid',
    autoHeight: false,
    height: 200,
    frame: false
});

enter image description here

1 Ответ

2 голосов
/ 22 июня 2011

Вы можете поместить слушателя в событие afterrender вашей сетки (или в событие load вашего привязанного хранилища), чтобы пройтись по хранилищу с логическим проверенным значением и вызвать GridPanel.selectRecords () метод для выбора всех этих записей в вашем пользовательском интерфейсе. Это проверит их флажки.

...