Почему щелчок по значку в столбце действий панели сетки ExtJS 4 не выбирает строку?

У меня есть панель сетки с колонкой действий.

В столбце действий есть значок, и его обработчик кликов работает нормально.

Но когда я щелкаю значок, в обработчике кликов я хочу получить доступ к выбранной строке, но кажется, что строка не выбрана.

Ожидается ли это? Нужно ли вручную устанавливать выбранную строку при нажатии значка столбца действий?


person Greg Lafrance    schedule 24.01.2014    source источник
comment
Кажется, это работает, но почему строка не выбирается при нажатии на значок столбца действий этой строки? Не имеет смысла. grid.getSelectionModel (). Выберите (запись);   -  person Greg Lafrance    schedule 24.01.2014


Ответы (1)


Если вы хотите выбрать строку также после того, как пользователь щелкнет значок в actioncolumn, просто установите actioncolumn stopSelection настроить свойство на false:

{    
    xtype:'actioncolumn',
    stopSelection: false,
    items: [{
       ...
    }]
}

Однако распространенным вариантом использования, как получить доступ к записи строки, когда пользователь щелкает значок в столбце действия, является получение индекса строки, в которой пользователь щелкает значок столбца действия, и получение записи из хранилища по этому индексу:

{
    xtype:'actioncolumn',
    items: [{
        tooltip: 'Edit',
        handler: function(grid, rowIndex, colIndex) {
            // get record at index of row where user click on icon in action column
            var record = grid.getStore().getAt(rowIndex);
            // do action with record ...
        }
    }]
}
person Akatum    schedule 24.01.2014