У меня есть кнопка, текстовое поле и сетка с огромным количеством данных.Что я делаю, так это набираю какое-то число, и по нажатию кнопки я хочу, чтобы моя сетка выбирала и показывала на экране для каждой конкретной записи.
Пример, если я выберу 1200, то он перейдет к 1200-й записи и покажет ввид из прокрутки.
Для этого я делаю
grid.getView().scrollIntoView(value)
Это работает нормально, но для больших данных это не удается.Итак, что я здесь делаю, это
grid.getView (). ScrollDelta ('Y', значение * 10, true);
Это также работает нормально.Но моя проблема в том, что когда бы я ни вводил новое значение, я хочу, чтобы прокрутка начиналась сверху.Я пытаюсь использовать этот код grid.getView().focusRow( record );
и все работает нормально, но мой фокус меняется.
Я не хочу, чтобы мой фокус менялся.Есть ли другой способ начать сверху?
Вот мой код.
click : function(){
var view = this.getView();
var grid = view.down('myGrid');
var value = view.down('field').getValue();
//grid.getView().scrollIntoView(value);
grid.getView().focusRow( record ); // Trying to put on top but not by this way
grid.getView().scrollDelta('Y',value*10,true);
}
Что происходит, предположим, что мое значение равно 100, и если я ввожу новое число, то оно будет прокручиваться вниз.(Если я установлю значение 50, оно прокручивается до 150. Я хочу прокрутить 50, поэтому сначала я хочу пойти сверху, а затем снова прокрутить, имея фокус.)