RichTextCellType performance issue

Posted by: plillevold on 8 September 2017, 1:53 pm EST

  • Posted 8 September 2017, 1:53 pm EST

    Hi,

    we're using Spread in WinForms and .Net 3.5 and are building up a SheetView in code. We are experiencing severe performance issues when scrolling the spread control or selecting a cell.

    After some profiling we figured out that a lot of BitmapPaint-ing was going on sourced in the CellType.RichTextEditor class. Our SpreadView contained two ranges with celltype set to RichTextCellType with multiline and wordwrap set to true. If we set the celltype to a plain TextCellType we saw a 13% performance increase in profiling and greater UI responsiveness.

    Is this a known issue? Are there special considerations we should take when using the rich text cell type? 

  • Replied 8 September 2017, 1:53 pm EST

    RichTextCellType rendering is a more expensive proposition since the cell cannot simply be rendered through the Graphics.DrawString method. Extensive use of RichTextCellTypes certainly could cause a performance hit depending on many other factors. Many, but not all, of these issues were resolved with version 4 of the Spread for Windows Forms product. So if you haven't upgraded to version 4 you may wish to take a look at that.

  • Replied 8 September 2017, 1:53 pm EST

    Thats reasonable. But we've just recently upgraded to the latest build. FarPoint.Win.Spread.dll, 4.0.3509.2008. And my spread have only got two richtext cells. That shouldn't be too excesive.

  • Replied 8 September 2017, 1:53 pm EST

    Are there any alternative to using rich text cells if we only need simple formatting like bold and italic?
  • Replied 8 September 2017, 1:53 pm EST

    Hello,


    If you are needing different formatted text in the same cell, you would either need to use the RichTextCellType or create a custom celltype to programatically have the celltype do what you want.

Need extra support?

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

Learn More

Forum Channels