Extjs: четкие выделения в селекторе элементов

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

Вот как выглядит экран с выбором в определенном меню:

введите описание изображения здесь

И вот выбор снова после выбора другого меню: введите описание изображения здесь

Я попытался получить доступ к хранилищу и clearValue () и setValue (''), что является неправильным решением, и я не смог получить доступ к selecitonModel для выполнения clearSelections () здесь.

Как очистить выбор при нажатии меню?

Большое спасибо за вашу помощь, спасибо большое.

Всего 2 ответа


Вы можете использовать метод getSelectionModel().deselectAll() для «Просмотр пользователей» (который вы хотите очистить выделение) в пределах select слушателя из «Вид ролей». Это приведет к удалению всех пользовательских записей при выборе другого меню. См. Документы: getSelectionModel , deselectAll .

Пример:

{
    xtype: 'dataview',
    .
    .
    .

    listeners: {
        select: function(dataview, record, index, eOpts){
            dataview.view.up('viewport').down('#usersView').getSelectionModel().deselectAll();
        }
    }
}

Внутри слушателя он выполняет метод отмены всех записей из целевого представления.

Эти методы обычно встречаются в компонентах, которые имеют поведение выбора, например, grid .

См. Эту скрипту: Отмените выбор элементов DataView .


store.removeAll();

Это то, что вы ищите


Есть идеи?

10000