Incredibilmente dopo 2 giorni ho trovato il problema... ovviamente subito dopo che inserito il post nel forum:
si tratta di un problema legato a Vista e alle sue impostazioni del GUI.
E' necessario quindi visualizzare il controllo con il "vecchio stile". Per farlo utilizziamo le API:
codice:Private Declare Function DeactivateWindowTheme Lib "uxtheme" Alias "SetWindowTheme" ( _ ByVal hWnd As IntPtr, _ Optional ByVal pszSubAppName As String = "", _ Optional ByVal pszSubIdList As String = "") _ As Integer
Esempio:
Bisogna chiamare la funzione DeactivateWindowTheme dopo ogni Update del controllo MonthCalendar.codice:Dim d1 As Date = Date.Now.AddDays(-1) Dim d2 As Date = d1.AddDays(2) Me.MonthCalendar1.BoldedDates = New Date() {d1, d2} Me.MonthCalendar1.UpdateBoldedDates() DeactivateWindowTheme(Me.MonthCalendar1.Handle)
Spero vi sia utile
Ciao ciao

Rispondi quotando