Hej Har fortfarande samma underliga fel.Omritning av form
Jag har ett mysko fel som dyker upp på vissa datorer men inte alla.
Jag har i min form en listview (details) med ett gäng listview items. Vissa av raderna (listview items) har jag gjort så att fonten är bold och andra inte bold.
Men när jag tex. startar programmet så ritas inte raderna i bold (de som ska vara i bold), dessutom är det en helt annan font. Detta rättar sig till om jag på något sätt ritar om fönstret, tex gör det maximerade fönstret till normal storlek.
Detta konstiga fenomen uppstår på flera datorer, men jag har en dator där det inte blir så...utan raderna ritas som bold på en gång när programmet startar upp, precis som det ska.
Programmet är från början skrivet i visual studio 7 och då såg jag inte detta problemet alls. Sedan gick jag över till visual studio 8 och då uppstod problemet. (Jag använde inte visual studios egen konvertering till ny version utan skapade nytt projekt och liksom byggde upp det från början. Så det kan inte heller varit konverteringen som orsakade detta.) Alltså, kod som funkat fint i visual studio 7 funkar dåligt i visual studio 8.
När jag nu kör mitt program på datorn som har visual studio 8 installerat så uppstår problemet. Kör jag däremot min exe-fil på en dator som fortfarande bara har visual studio 7 installerat så fungerar det som det ska.
Jag har .Net framework 1.1 och 2.0 på bägge datorerna, likaså 1.1 Hotfix.
Provade att installera visual studio 2005 service pack 1, men det hjälpte inte.
Någon som vet vad detta beror på, eller vad som kan skilja de bägge datorerna åt? Eller kan jag lösa detta i koden? (Jag har provat anropa funktioner som ritar om både hela formen och enbart listviewn, men har uppenbarligen inte lyckats.)Sv: Omritning av form
En kortare version av problemet. Scenario: Jag startar mitt GUI. Texten i listviewn har fel font och är inte bold. Jag klickar på ett annat programs fönster och drar detta fönstret över mitt GUI så att Guiet hamnar under (hel eller delvis). Drar sedan bort det överliggande fönstret. Den delen av listviewn i GUIet som blev täckt med det andra fönstret har nu ritats om av windows och ser nu ut precis som det ska. Rätt font och texten är i bold.
Ledtråd:
Jag la in raden Application.EnableVisualStyles() och då försvinner problemet.
Uppenbarligen triggar enableVisualStyles något..