We have an application with very heavy UI. Recently our clients started complaining to application startup performance. (Previously our controls/forms were initialized while a some kind of the splash screen with a message 'starting' was shown).
I've made a research and found that the control's InitializeComponent() (which is generated by VS designer) method call can take up to ~0.4-0.5s for complex controls. And there are a lot of such controls, so I'm getting ~10-15 seconds of application startup time as the result. There are nothing that could be really heavy there, only controls initialization (for example, different toolstrips, toolstripbuttons, menustrips initialization, setup of different texts etc).
Is there a way to improve performance of controls initialization in this case? Maybe some kind of caching or smth like that (so our application will start up slowly only during the first load)?
P.S. We're using .NET 2.0
Thanks in advance.