2012-06-07 3 views
1

У меня есть googled, поиск форумов и обмена стеками, но ничего не работает для меня. Я запускаю extJS 3.2.1.Когда звонить scrollIntoView()

В основном у меня есть элемент управления сеткой, у которого есть элементы, которые выделены серым цветом по мере их завершения, но вертикальная панель обзора составляет всего около 200 пикселей, тогда как список может расти довольно большой, оставляя пользователей прокручивать вниз каждый раз, когда я делаю магазин. Reload()

я обнаружил, что я могу вручную переместить следующий элемент в списке по телефону:.

grid.getView() GetRow (15) .scrollIntoView();

Я не могу использовать selectRow(), потому что я включил флажки вместо выбора строки.

В любом случае приведенный выше код отлично работает, я не могу определить, где его называть. Я попытался захватить событие store.load, а также grid.afterrender и, похоже, не работает.

Любые идеи?

ответ

1

Если вы перейдете к источнику store.reload();, вы увидите, что он вызывает метод загрузки. http://docs.sencha.com/ext-js/3-4/source/Store.html#Ext-data-Store-method-reload

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

Нечто подобное

store.on('load',function(){ 
    grid.getView().getRow(15).scrollIntoView(); 

}) 

http://docs.sencha.com/ext-js/3-4/#!/api/Ext.grid.CellSelectionModel-method-select является выбор ячейки модель эквивалентна кстати (из строки выбора).

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