We currently have a setup where we have a RadEditor control embedded into a user control (.ascx). This user control is then embedded into the content template of a RadWindow control that is not visible by default. The user clicks a button, and we have it set up to where the RadWindow pops up and the RadEditor control is fully functioning.
As is today, the setup works perfectly except for one issue: performance.
Using the network monitor, we've noticed that page loads and postbacks take anywhere between 900 ms to 1.4 seconds. If we take the RadEditor completely out of the code, this performance improves to 100ms to 200ms page loads and pstbacks.
So my question is are there any known performance issues regarding the RadEditor control inside of a RadWindow control?
For reference we are referencing Telerik.Web.UI.dll version 2019.2.514.45
5 Answers, 1 is accepted
Do you get better results if you change the content area of RadEditor to Div by setting ContentAreaMode property to DIV?
Here are some additional tips for editor load boosting:
- set <compilation debug="false"/> in the web.config file
- configure the editor to use ToolbarMode="ShowOnFocus"
- Remove the Undo and Redo buttons from the toolbar - https://docs.telerik.com/devtools/aspnet-ajax/controls/editor/functionality/toolbars/buttons/remove-toolbar-buttons
- Set the CssFiles property to point to an empty CSS file this way the page stylesheet will not load into the Apply Class dropdown.
- Enable the CDN scripts or use local CDN scripts.
- Set EnableViewState = false
- Use RadScriptManager instead of Asp:ScriptManager
- Change the RenderMode from Classic to Lightweight or vice versa depending on its current state.
If the result is still unsatisfactory, you can give a try of the Kendo UI Editor instead of RadEditor. The Kendo editor is entirely a client-side solution and it is very lightweight component.
We have tried all options mentioned, and the performance of the RadEditor inside of a RadWindow is still extremely bad.
I also spent the afternoon with your suggestion of trying the Kendo UI Editor instead of the RadEditor (which was a good thought), but the Kendo UI Editor does not function with local scripts and with CDN scripts; only a bare textarea control is presented.
You can see how to configure the Kendo UI widgets to load their script resources via CDN in this article: Using CDN, which also includes instructions on how to implement a local fallback.
The live demos of the Kendo Editor also use CDN - https://demos.telerik.com/kendo-ui/editor/index, e.g.
I have a solution in place. What I had to do was completely ditch the design revolving around the RadWindow. Instead I had to stand up a new ASPX page and place the RadEditor control there on it's own. Then I put appropriate links in place.This resolved the performance problems and I'm now getting less than 150 ms post back time (much better than 1 - 2 seconds). It does appear as if there is a performance problem with either the RadWindow, the RadEditor, or the combination of the controls in an AJAX setting. Stepping away from this design resolves it.
Using the editor from the Kendo UI was a good idea. But unfortunately it didn't really suit our architecture without heavy modifications to our architecture. It worked fine on it's own inside a pure HTML site, but did not function inside the confines of an ASP.NET AJAX project. In the end it wasn't giving us enough value to warrant the time and effort.
Thank you for sharing your way of resolving the issue. I am very happy that you have found a solution to the performance problem that satisfies your project requirements.
If you have any other questions please let me know.