2016-10-14 3 views
3

У меня есть рабочий компонент <kendo-grid> с 10 видимыми рядами по набору данных из 34 строк (около 4 страниц). Сортировка и выбор работают должным образом.Kendo UI для Angular2 - Grid Row Select

<kendo-grid [data]="gridView" 
        [pageSize]="pageSize" 
        [skip]="skip" 
        [pageable]="true" 
        [height]="300" 
        (pageChange)="pageChange($event)" 
        [sortable]="{ mode: 'single' }" 
        [sort]="sort" 
        [selectable]="true" 
        (sortChange)="sortChange($event)" 
        (selectionChange)="selectionChange($event)"> 

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

Как удалить выбранную строку в моем (sortChange) событии, чтобы по крайней мере пользователь не представил другой выбор, который они уже выбрали. Я открыт для какого-то атрибута привязки данных для выбранной строки, который я мог бы установить в null или какое-либо свойство на gridView или даже прокручивать внутри @ViewChild.

Любая помощь будет оценена по достоинству.

Нормальный Сортировать

Normal Sort

по возрастанию Сортировать

Ascending Sort

нисходящее Сортировать

Descending Sort

ответ

2

У меня был подобный вопрос здесь: Select grid row item from code

В принципе, вы также должны выбрать элемент сетки строки из кода без взаимодействия с пользователем, и это в настоящее время не поддерживается в текущей бета-сборки Кендо UI Angular2 управления.

0

В моем приложении я прибегаю к запуску события щелчка в строке, которую я хочу выбрать. :/

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

var grid = document.getElementById('myGrid'); 
var rows = grid.getElementsByTagName('tr'); 
rows[idx].click(); // add one to the desired row index to skip the header row 

Вот (коряво, минимальный) Plunkr этого сценария: http://plnkr.co/edit/09dlqdl0Xchoy0e5zKRq

Смежные вопросы