forms loading events!!!
-
Hi, i want to ask whether there are any events for windows forms which will help me detect if the form is fully loaded. i.e that the UI is completed loaded and is visibly to the user, so that i can perform some actions after that. I intend to display some animations only when the user interface is completely loaded and visibly to the user. Using the form_load events does not help as already everything will be loaded when the form appears. i wish to do some action after some time. Anything except timers.
-
Hi, i want to ask whether there are any events for windows forms which will help me detect if the form is fully loaded. i.e that the UI is completed loaded and is visibly to the user, so that i can perform some actions after that. I intend to display some animations only when the user interface is completely loaded and visibly to the user. Using the form_load events does not help as already everything will be loaded when the form appears. i wish to do some action after some time. Anything except timers.
There is a visible changed event, I think, but the loaded event has always worked for me.
Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.
-
There is a visible changed event, I think, but the loaded event has always worked for me.
Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.
na!!! u mis understood me. I just want to do something once the UI is fully loaded and is displayed. I will try the visible changed event. but still there should be some kind of indication which could tell me if the user interface load is complete and it is displayed fully onscreen
-
Hi, i want to ask whether there are any events for windows forms which will help me detect if the form is fully loaded. i.e that the UI is completed loaded and is visibly to the user, so that i can perform some actions after that. I intend to display some animations only when the user interface is completely loaded and visibly to the user. Using the form_load events does not help as already everything will be loaded when the form appears. i wish to do some action after some time. Anything except timers.
Hi, Take a look at the Application.Idle event which is raised whenever the windows message queue is empty. The first time this happens is when the the form is fully displayed. Detach the handler within the handler if no more notifications are needed. Hope that makes sense!
private void Application\_Idle(object sender, EventArgs e) { Application.Idle -= new EventHandler(this.Application\_Idle); // do stuff here }
Alan.
-
Hi, Take a look at the Application.Idle event which is raised whenever the windows message queue is empty. The first time this happens is when the the form is fully displayed. Detach the handler within the handler if no more notifications are needed. Hope that makes sense!
private void Application\_Idle(object sender, EventArgs e) { Application.Idle -= new EventHandler(this.Application\_Idle); // do stuff here }
Alan.
Alan N wrote:
whenever the windows message queue is empty
Does this state always get hit when the form has completed, can the user start filling the queue by banging on a button or activating another event before this state can be reached.
Never underestimate the power of human stupidity RAH
-
Hi, i want to ask whether there are any events for windows forms which will help me detect if the form is fully loaded. i.e that the UI is completed loaded and is visibly to the user, so that i can perform some actions after that. I intend to display some animations only when the user interface is completely loaded and visibly to the user. Using the form_load events does not help as already everything will be loaded when the form appears. i wish to do some action after some time. Anything except timers.
Hi, Have a look at the Form.Shown event. Is it too hard to look over the list of available events? do you really want to wait one hour or so for an answer? :)
Luc Pattyn
I only read code that is properly indented, and rendered in a non-proportional font; hint: use PRE tags in forum messages
Local announcement (Antwerp region): Lange Wapper? Neen!
-
Alan N wrote:
whenever the windows message queue is empty
Does this state always get hit when the form has completed, can the user start filling the queue by banging on a button or activating another event before this state can be reached.
Never underestimate the power of human stupidity RAH
-
Alan N wrote:
whenever the windows message queue is empty
Does this state always get hit when the form has completed, can the user start filling the queue by banging on a button or activating another event before this state can be reached.
Never underestimate the power of human stupidity RAH
It cannot be relied upon to do what you want. Idle only fires when the message queue for the entire application is empty, not when any one form is idle. The VisibleChanged event of the form is about as close as your going to get. Just be sure to check the Visible property of the form so you're not trying to do whatever you need to when the form is no longer visible or gets covered up. You're also going to have to make sure you set a flag to know that you've started whatever work you need. The VisibleChanged event will also fire if anotehr form obscures your form and when the form is no longer obscured.
A guide to posting questions on CodeProject[^]
Dave Kreskowiak Microsoft MVP Visual Developer - Visual Basic
2006, 2007, 2008
But no longer in 2009... -
Hi, Have a look at the Form.Shown event. Is it too hard to look over the list of available events? do you really want to wait one hour or so for an answer? :)
Luc Pattyn
I only read code that is properly indented, and rendered in a non-proportional font; hint: use PRE tags in forum messages
Local announcement (Antwerp region): Lange Wapper? Neen!
:P No dude its not hard, but experimenting with these events takes time and i don't have much for one thing. So y not ask the people who have already experimented on it.