This is a migrated thread and some comments may be shown as answers.

Pane appearance takes time (performance issue)

3 Answers 238 Views
Docking
This is a migrated thread and some comments may be shown as answers.
Mar
Top achievements
Rank 1
Mar asked on 27 May 2015, 10:07 PM

Hi,

Some performance issue.
The 'Content' property of my RadPane holds a quite complex visual tree (let's say it contains RadGridView), and I add it to the Panes ObservableCollection.
I've implemented a custom DockingPanesFactory and only overrided the AddPane method. Not something special, it's almost like your example here:
http://docs.telerik.com/devtools/wpf/controls/raddocking/features/panes/panesource.html

I've noticed that adding of pane to the visual tree by Panes.Add(pane) that invoke the AddPane of the DockingPanesFactory takes something like 400ms.
Same for the Remove method. It's relevant also for DragStart when undocking this "heavy" pane, what happens is, the ToolWindow for this floating pane appears after a second or two, and the user holds the left mouse button down with no ToolWindow below the mouse cursor, and as I said only after 1-2 seconds the ToolWindow appears.

My Content property holds a ViewModel that has a DataTemplate targeted to it by "TargetType" property of the DataTemplate. The DataTemplate consist of a View that has a RadGridView ....

It's not reasonable that the whole pane appears only after its content added to the visual tree. I want to make the Pane to appear and let the content to load afterwards, Especially regarding the ToolWindow, because the user don't have any indication that the ToolWindow takes time to appear.

BTW, I've disabled the animations... you know, by....
<telerikDock:RadDocking telerik:AnimationManager.AnimationSelector="{x:Null}"
telerik:AnimationManager.IsAnimationEnabled="False">

Please, help me here to achieve my goal.
Thanks!!!


3 Answers, 1 is accepted

Sort by
0
Vladi
Telerik team
answered on 01 Jun 2015, 11:37 AM
Hi,

Thank you for contacting us.

In the current version of the RadDocking control such advanced cache mechanism for floating docked RadPane instances is not available. By design when a docked pane is being undocked it is placed inside a newly created ToolWindow instance and its Content is immediately transferred. This is done in order to remove any delay that could make that content detached from the other UI which could cause bindings connected to that UI to get broken leading to binding expressions.

You could use our feedback portal located here to add a new feature request for such advanced cache mechanism that would allow the Content of a docked RadPane to be moved to its floated ToolWindow only after it is fully rendered.

Regards,
Vladi
Telerik
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Feedback Portal and vote to affect the priority of the items
0
ldom07
Top achievements
Rank 1
answered on 28 Nov 2019, 07:31 PM

Hi,

I have the same issue. Have you found any solution since then?

Please, help me deal with this problem.

Thank you in advance.

0
Vladimir Stoyanov
Telerik team
answered on 03 Dec 2019, 10:15 AM

Hello Leila,

There aren't any changes introduced in the way that the Content of the RadPane is transferred to the ToolWindow. With this in mind, the performance would be relative to how heavy the UI that is placed in the RadPane is. 

That said, if you are using the RadGridView, you can check out its lightweight templates, which should improve its loading time. Along with that, you can also consider using the NoXaml dlls, which should improve the loading time overall. 

Regards,
Vladimir Stoyanov
Progress Telerik

Get quickly onboarded and successful with your Telerik and/or Kendo UI products with the Virtual Classroom free technical training, available to all active customers. Learn More.
Tags
Docking
Asked by
Mar
Top achievements
Rank 1
Answers by
Vladi
Telerik team
ldom07
Top achievements
Rank 1
Vladimir Stoyanov
Telerik team
Share this question
or