I want to have a splashpanel pop up when a new process has started loading.
The panel appears appropriately, but the text labels I have placed on it are not there - they appear to have been cut out of the panel, so that the underlying form continues to appear though the label rectangles.
Comparing to the sample code properties, I don''t see any differences in the panel implementation.
Appears that calling Application.DoEvents() right after calling .ShowSplash() will cause the text to display properly.
ADAdministrator Syncfusion Team February 14, 2005 02:51 PM
Are you showing the SplashPanel non-modally? If not, doing so should solve this.
ADAdministrator Syncfusion Team February 14, 2005 02:53 PM
Please ignore my last post. I didn''t see your response.
JGJulien GoldbergMay 19, 2005 07:17 AM
I have the same problem than Peter.
Showing the popup modaly or not doesn''t change anything. Same with Application.DoEvents() right after the ShowSplash call.
In fact if i click on a button to show a popup, the text in the popup is ok.
But if i popup a message every seconds (due to a timer), the text doesn''t appear.
Thank you for the help.
ADAdministrator Syncfusion Team May 19, 2005 05:40 PM
The only time I''ve been able to reproduce the blank text is when I''m showing the SplashPanel so rapidly that there isn''t enough time for it to finish rendering.
Do you have a sample that demonstrates this problem? Alternatively, what version are you using, so that I can check it for the problem?
JGJulien GoldbergMay 20, 2005 08:48 AM
I ve tested the splashpanel in a small new project. It works fine.
But in the application i''m developping, i ve still this bug (it''s difficult to send you a part of the code).
If i launch a splashpanel from clicking a button, it''s ok, even if i click very fast. But if i launch a splahpanel from a timer, even if the interval is 5 seconds, i have the bug.
So, i''m not sure that is a problem of speed.
ADAdministrator Syncfusion Team August 8, 2005 10:24 AM
I have run into the same problem with a client''s application. I noticed the problem occasionally when I was developing the app. After further testing, it seems that the problem lies with calling the .ShowSplash method from a thread other than the main thread.
If you are using a System.Windows.Forms.Timer (which you get when dragging from the toolbox), everything seems OK since the Tick event runs in the same thread as the form that hosts the SplashPanel.
If you are calling from another thread or using a System.Timers.Timer object (which uses another thread), then you need to use the form''s .Invoke method as below. I tried calling Application.DoEvents and SplashPanel.Refresh, but both of these seem to cause strange painting artifacts when the panel is animating. I think it''s because the calls to DoEvents / Refresh run during the animation instead of after it.
Anyway, here''s what works for me. To use this code, just declare the delegate and call the ShowSplash sub from somewhere in your code. The sub figures out if it needs to use invoke. Maybe something like this could be incorporated by SyncFusion into the source code for the SplashPanel''s .ShowSplash method since it is very likely that people will want to pop up the panel from another thread.
Private Delegate Sub ShowSplashDelegate()
Private Sub ShowSplash()
If Me.InvokeRequired Then
Me.Invoke(New ShowSplashDelegate(AddressOf ShowSplash))
ARAnupama Roy Syncfusion Team August 11, 2005 11:16 AM
We are able to reproduce this problem.I will go ahead and submit a bug report on this and
we will be including this into the source at the earliest.Thanks for your valuable suggestion.
We really appreciate for your interest in Syncfusion products.
ARAnupama Roy Syncfusion Team August 12, 2005 10:14 AM
You can track the status of the issue through this link.