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

Hidden userdockforms repainted

4 Answers 102 Views
Dock
This is a migrated thread and some comments may be shown as answers.
erwin
Top achievements
Rank 1
Veteran
Iron
erwin asked on 12 Jun 2008, 09:32 AM
Docking 2008 Q1 SP1

In some strange cases opening a new document seems to cause repeated repainting / resizing(?) of documents that are in the background. Are there known repainting/refresh bugs? To provide a test application is probably quite complicated. I've noticed this mainly with UserDockForms that contain nested Table Layout Panels and .net UserControls.

4 Answers, 1 is accepted

Sort by
0
erwin
Top achievements
Rank 1
Veteran
Iron
answered on 12 Jun 2008, 09:20 PM

I have also noticed, that when adding a new UserDockForm to a Docking Manager all UserDockForms in the same Tab Group get VisibleChanged Event fired.
IMHO, only the old UserDockForm that gets now hidden plus the new UserDockForm that's now active should fire Visible Changed Events.
The whole runs havoc when I open lets say 20 documents and then drag one from one tab group to the other. Now all UserDockForms fire their visible Changed at least twice....

0
Julian Benkov
Telerik team
answered on 13 Jun 2008, 08:12 AM
Hello Erwin,

We managed to reproduce this issue in the UserDockForm. It will be addressed in one of our future releases.

Still, for the time being, there is a workaround you can use to achieve the desired functionality. Store a reference to both forms (the one just becoming visible, and the one being hidden), and place a condition in the event handler so that the VisibleChanged event is handled only for these two forms.

Your Telerik points have been updated for reporting these issues.

Sincerely yours,
Julian Benkov
the Telerik team

Instantly find answers to your questions at the new Telerik Support Center
0
erwin
Top achievements
Rank 1
Veteran
Iron
answered on 13 Jun 2008, 08:42 AM

Hello Julian

Thank you for your quick response.

The problem ist not the Visible Changed event per se (since I don't use it in my code yet except for tracing :-) ) but the fact that at least some child controls on the hidden UserDockForms seem to redraw themselves even if they are not visible. If they paint directly to the screen, you see parts of actually hidden forms painting through the foreground window.
This leads to increased load time with each open document and to excessive flicker.

Is there a workaround to catch these events on invisible userdockforms and prevent the child controls from redrawing?

Regards
Erwin

0
Julian Benkov
Telerik team
answered on 13 Jun 2008, 11:58 AM
Hi Erwin,

Currently, you can try to use your Form object hosted in the DockPanel or DocumentPane windows. Another solution is to implement the IDockable interface. In both cases, you must change the TopLevel and FormBorderStyle properties of Form.

You can find additional information here:
http://www.telerik.com/support/kb/article/b454K-ttg-b454T-ckg-b454c-ckg.aspx

Contact me again if you need further information.

All the best,
Julian Benkov
the Telerik team

Instantly find answers to your questions at the new Telerik Support Center
Tags
Dock
Asked by
erwin
Top achievements
Rank 1
Veteran
Iron
Answers by
erwin
Top achievements
Rank 1
Veteran
Iron
Julian Benkov
Telerik team
Share this question
or