Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

performance issue #511

Open
Johnson1207 opened this issue Dec 6, 2023 · 3 comments
Open

performance issue #511

Johnson1207 opened this issue Dec 6, 2023 · 3 comments

Comments

@Johnson1207
Copy link

Description

The performance will significantly degradation as the visible cells increase after I changed the background color of each cell.

Reproduce

  1. Create a ReoGrid control with a grid size larger than 100*100.
  2. Programmatically update the style of the cells (background color, text color, etc.). I'm using sheet.Cells[y, x].Style.BackColor = unvell.ReoGrid.Graphics.SolidColor.SeaGreen;
  3. Observe the performance, especially the responsiveness of the UI (including slow response times when selecting cells or scroll the grid.), as more cells are visible.

Edition

Which edition of ReoGrid do you using?

  • WPF version 3.0.0

Environment

  • OS: Windows 10
  • Language of OS: Chinese
@jingwood
Copy link
Member

jingwood commented Dec 6, 2023

The WPF edition experiences performance issues when numerous cells have background fill colors. ReoGrid renders cell backgrounds one by one, which is not a significant problem on the Windows Forms platform but can be slow on the WPF platform due to the slower graphics rendering in WPF. We have identified this issue and are actively working on finding ways to resolve it in the next version. Thanks for your reporting.

@Johnson1207
Copy link
Author

Thank you for your prompt response to this issue. I have further observed that the performance issue is not only limited to updating cell styles but also occurs when inserting a single character into each cell of the grid. The performance bottleneck might be broader than initially anticipated. Any improvement to address this would be greatly appreciated.

@CanadianHusky
Copy link

Respectfully, I would like to comment about performance. I am aware that my suggestion may not be relevant (or too late) for @Johnson1207 because your project is already fully committed to WPF platform.
I use Reogrid Winforms edition with grid sizes of 30 to 50 cols x 10,000 rows and many cells with background color, custom styles etc. Performance for scrolling, selection, editing is brilliant and UI updates are in the range of milliseconds, invisible to the user.
Any application that is serious about performance is better off with (old school) robust Winforms platform. I tried a few WPF tests and besides doing some fancy UI styling and markups, there is nothing fundamentally to gain by using WPF. You are giving up significant performance when choosing WPF over Winforms, not just in Reogrid but every part of the UI when it comes to high performance. This is my personal opinion based on experience and not a recommendation for your particular case.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants