Jag vet att det finns många duktiga programmerare här så jag tänkte
fråga här efter två dagars googlande och testande...

Sitter och hjälper grabben med ett vb.net projekt. Ett "vanligt" Windows program.
Vi använder: Visual Studio Express 2013 for Windows Desktop
En form har en bakgrundsbild (inlagd vid design) och sedan ett 20 tal
buttons och text labels. Problemet är att när Windows visar/öppnar formen
så görs det först "hål" i bakgrundsbilden där de olika buttons och labels ska vara.
Dessa "hål" får samma färg som den bakgrund som fanns där innan, antingen
t.ex färgen från skrivbordet eller t.ex text från en websida, om formen öppnades
"framför" en websidan. Det går rellativ fort innan rätt knappar och labels fylls i,
men det hela "blinkar" ganska störande.
Man kan notera att det på min maskin (Win7) så är det föregående bakgrund
som syns genom "hålen". På grabbens Win8.1 maskin så verkar det alltid
bli helt vita rutor, så det är inte helt konsekvent...
Efter googling har vi provat olika "lösningar" som t.ex.
- DoupleBuffering = True (även satt direkt i properties istället för i Load() event.
- SuspendLayout/ResumeLayout
Alla dessa i Load() event, men problemet verkar uppträda innan man kommer
så långt, inget av ovanstående gjorde i alla fall någon skillnad.
Det vore bättre (mindre störande) om Windows inte reserverar (gör hål)
i bakgrundsbilden för de objekt som ska skrivas dit, men just det har jag
inte hittat något sätt att undvika (ställa in).
En sak som vi inte har testat är att sätta alla objekt till visible=False vid
design och sedan ändra till True efter att formen är laddad...
Projektet är skapat som en "Windows Forms". Det finns även "WPF"
som ett alternativ, inget som vi har provat eller testat...
Man kan även notera att man får samma fenomen om man bara minimerar
och sedan återställer fönstret, det verkar alltså ha med hur Windows "ritar",
inte med vb.net som sådant (?).
Hur som helst, om någon som har sett detta fenomen (och hittat en lösning)
så är jag väldigt intresserad...

/Janne.