Ext JS 4.2 Подсветка дерева выбранной строки при редактировании ячейки - PullRequest
0 голосов
/ 24 апреля 2020

У меня есть панель дерева с 4 столбцами:

var cellEditing = Ext.create('Ext.grid.plugin.CellEditing',{
    pluginId : 'cellEditing',
    clicksToEdit: 1
});
var tree = new Ext.tree.Panel({
    store:treestore,
    plugins : [
        cellEditing
    ],
    selModel:{
        selType:'cellmode'
    },
    defaults:{
        tdCls:'greyColumn'
    },
    columns:[
        somecolumns
    ]
});

И в моем css у меня есть стиль:

.x-grid-row .greyColumn {
    background-color:#f2f2f2;
}

Я пытаюсь добавить этот кусок код в определении selModel:

listeners: {
    select: function (cellModel, record, rowIndex) {
        cellModel.view.addRowCls(rowIndex, 'style');
    },
    deselect: function (cellModel, record, rowIndex) {
        cellModel.view.removeRowCls(rowIndex, 'style');
    },
    scope: this
}

И в моем css определении "стиля":

.x-grid-row.style .x-grid-cell {
    background-color: #edbcb4 !important;
}

Когда дерево загружается, я вижу столбцы с серым фоном, но когда я выбираю одну ячейку для редактирования, она на мгновение становится красной и становится серой, и я не знаю, как это исправить или избежать. Я хочу, чтобы строка ячейки редактировалась красным, а не серым.

1 Ответ

1 голос
/ 24 апреля 2020

Используйте события edit и beforeedit в строке стиля компонента celledit

Fiddle

...