C1FlexGrid performance issue

Posted by: danielmco on 7 August 2017, 8:40 am EST

  • Posted 7 August 2017, 8:40 am EST

    As soon as you put a few hundred or more rows in a C1FlexGrid, the scrolling becomes sluggish and jerky. As the number of rows starts getting into the thousands, the grid becomes almost unusable because the scrolling is so slow. You can see these issues in the standard C1FlexGrid iTunes sample:

    1. Click "Artists" to show approx 300 rows and scroll the grid up and down a few times. The scrolling is already quite sluggish and jerky, even with this small number of rows.

    2. Click "Albums" to show approx 1,000 rows and repeat the test. The scrolling is much more sluggish and jerky.

    3. Click "Songs" to show approx 10,000 rows and repeat the test. The scrolling is now so sluggish and jerky that the grid is pretty-much unusable.

    I'm not sure if there has been a performance regression recently, or if C1FlexGrid was always this slow. Regardless, the current performance is not acceptable for real-world usage. Grid controls from other companies like Telerik can handle a million rows with smooth live scrolling. C1FlexGrid should at the very least be able to handle 10,000 rows without any sluggishness.

    Please let me know the cause of this slowness and what can be done to improve performance. What I would like to see is the iTunes sample working perfectly with 10,000 rows, with the same appearance and behavior as it currently has.

    Regards,
    Daniel

    P.S. I know about the DeferScrolling property of C1FlexGrid. While I'm sure this improves performance, deferred scrolling also makes for a poor UI, since you can't see the data while you're scrolling. So I would not consider deferred scrolling as a solution to the performance issue - I'm looking for decent performance with live scrolling.
  • Replied 7 August 2017, 8:40 am EST

    Hello,

    Scrolling has been improved in the latest build of C1 Studio for Silverlight. Please download this build and test at your end.
    http://prerelease.componentone.com/silverlight5/c1silverlight/2014-t2/C1Silverlight5_5.0.20142.409.zip



    Thanks,
    Deepak Sharma
  • Replied 7 August 2017, 8:40 am EST

    Hello,

    I am able to replicate this issue at my end. I would escalate this to the concerned person. I will let you know as soon as I get to know anything about this.


    Thanks,
    Deepak Sharma
  • Replied 7 August 2017, 8:40 am EST

    Hi Deepak,

    Sorry, I should have been more clear. I don't mean scrolling by clicking on the arrow button on the scrollbar (this works fine), I mean scrolling by grabbing the thumb and dragging it up and down. For example, show all songs, click and hold the scrollbar thumb, and drag it all the way to the bottom and then to the top again.

    Regards,
    Daniel
  • Replied 7 August 2017, 8:40 am EST

    Hello Daniel,

    I have tested this issue with the latest build samples online. and it seems to be working fine with all the three scenarios which you mentioned. Please have a look at the attached video and let me know in case you find it different from your observation.

    Thanks,
    Deepak Sharma
    2013/12/FlexGridScroll.gif.zip
  • Replied 7 August 2017, 8:40 am EST

    Hello,

    Developer had made a few changes to improve the scrolling performance. I have informed the concerned team that the performance is still not good at your end. I will let you know once I get another update on this issue.


    Thanks,
    Deepak Sharma
  • Replied 7 August 2017, 8:40 am EST

    Hello Daniel,


    The issue was originally fixed in the build 406. Here it scrolls much better than the build 376.

    ftp://supportftp@ftp.componentone.com/SupportFTP/Public/C1Silverlight5_5.0.20142.406.zip

    Please download the build from the given link. Open the link in IE and cancel the prompt for username and password.


    Thanks,
    Deepak Sharma
  • Replied 7 August 2017, 8:40 am EST

    Hi Deepak,

    I just tried with build 406, but the behavior is the same as build 409, i.e. just as slow as it was before.

    Regards,
    Daniel
  • Replied 7 August 2017, 8:40 am EST

    Hi Deepak,

    I have just tested with the new release and unfortunately the performance has not improved. If you test with the iTunes sample, the scrolling is just as slow as before.

    Regards,
    Daniel
  • Replied 7 August 2017, 8:40 am EST

    I have done some more testing and found that this performance issue is a regression. The scrolling was working fine in 2012v1. The performance issue was introduced in 2012v2, and has been present ever since.

    If you test all of the FlexGrid samples with 2012v1 and compare the performance to any of the later versions, there is a huge difference. Please investigate the changes between 2012v1 and 2012v2 to determine what caused the slowdown.

    Regards,
    Daniel
  • Marked as Answer

    Replied 7 August 2017, 8:40 am EST

    Hello Daniel,

    I have forwarded this information to the concerned team. I will let you know as soon as I get any update on this.



    Thanks,
    Deepak Sharma
  • Replied 7 August 2017, 8:40 am EST

    Hi Deepak,

    Thanks, I can confirm that the scrolling has been fixed in build 419. However, other things are still slow compared to 2012v1, such as sorting or inserting rows for large grids (e.g. 50,000 rows). Overall I would say the new FlexGrid is maybe 5x slower than the old one. The best workaround for me currently is just to use the FlexGrid from 2012v1. Whoever has been modifying FlexGrid since then has unfortunately not been testing the performance impact of their modifications.

    Regards,
    Daniel
  • Replied 7 August 2017, 8:40 am EST

    Hello Daniel,

    I would like to tell you that this maintenance build is a hot fix build which includes fixes for few reported bugs and it is not fully tested public release.
    We will surely like to test it with your user scenarios. Please provide us a sample application where you are facing other issues with the provided build.


    Thanks,
    Deepak Sharma
  • Replied 7 August 2017, 8:40 am EST

    Hello,

    This issue has been fixed in C1Silverlight version 419 that is available at
    http://prerelease.componentone.com/silverlight5/c1silverlight/2014-t2/C1Silverlight5_5.0.20142.419.zip.

    Please download the build and test the issue. Let us know in case you need further assistance.

    Thanks,
    Deepak Sharma
  • Replied 8 October 2018, 5:47 pm EST

    Hi Deepak,

    I have same scrolling issue with C1FlexGrid. When i have rows more then 50 and scrolling up or down then scrolling is not working properly.

    Generate as issue -
    Step1 : Create a grid with 10 column.
    Step2 : Bind data source in the grid with 50 row.
    Step3 : Create linklabel text in the last column of the grid.
    Step4 : Now Select any row from the grid and scroll up or down then you will see there is no synchronization between linklabel column and rest of the column of the grid row.

    Please suggest any solution regarding this.

    Thanks



Need extra support?

Upgrade your support plan and get personal unlimited phone support with our customer engagement team

Learn More

Forum Channels