Prevent scroll on save with virtual scrolling

6 posts, 0 answers
  1. Marc
    Marc avatar
    128 posts
    Member since:
    Jul 2010

    Posted 27 Oct 2016 Link to this post

    I've searched around a little but can't find a relevent resolution.


    On a grid with virtual scrolling (all data is on client), how can I stop Kendo from scrolling to the top of the page after a user does a batch save and the grid rebinds?

  2. Marc
    Marc avatar
    128 posts
    Member since:
    Jul 2010

    Posted 27 Oct 2016 in reply to Marc Link to this post

    I found this old post which is likely relevant to the issue I am seeing. Has this been addressed at some point in the last three years?


    If not how can I conditionally prevent the rebinding after a save?

  3. Dimiter Topalov
    Dimiter Topalov avatar
    1169 posts

    Posted 31 Oct 2016 Link to this post

    Hi Marc,

    Editing and scrolling to a specific data item are documented limitations of the Kendo UI Grid virtualization functionality:

    The described undesired behavior is a limitation of the virtual scrolling implementation. It is caused by the fact that once the data is refreshed, and the table has been previously scrolled, the Grid rows, and the scrollable container's position become out of sync. 

    A possible workaround is to store the scroll position before the Grid rebinds, and then programmatically scroll to it on dataBound (a certain timeout depending on the scenario will be required). However, this will not cause scrolling to a specific data item.

    You can prevent rebinding by handling the dataBinding event and calling e.preventDefault().

    Please note that in general, scenarios, involving virtual scrolling and editing are not supported, and we recommend using regular paging if the Grid must support CRUD operations.

    Dimiter Topalov
    Telerik by Progress
    Build rich, delightful, *native* Angular 2 apps with Kendo UI for Angular 2. Try it out today! Kendo UI for Angular 2 (currently in beta) is a jQuery-free toolset, written in TypeScript, designed from the ground up to offer true, native Angular 2 components.
  4. Marc
    Marc avatar
    128 posts
    Member since:
    Jul 2010

    Posted 01 Dec 2016 Link to this post

    For posterity here is my hack for this.

     function onDataBinding(e) {
            if (e.action === "sync") {



    .k-dirty-clear {

  5. David
    David avatar
    1 posts
    Member since:
    Nov 2017

    Posted 14 Nov 2017 in reply to Marc Link to this post

    @Marc, this definitely stops the auto scrolling after binding, But doesn't update the row until you either click off it or manually scroll. Did anyone ever find out how to just stop it from scrolling everywhere after binding with virtual scrolling?
  6. Stefan
    Stefan avatar
    2475 posts

    Posted 16 Nov 2017 Link to this post

    Hello, David,

    From our 2017 R3 release, we officially support the editing with virtual scrolling.

    Please check our new demo and advise if there are any scrolling issue after the new implementation:

    Progress Telerik
    Try our brand new, jQuery-free Angular components built from ground-up which deliver the business app essential building blocks - a grid component, data visualization (charts) and form elements.
Back to Top