Qualcuno ha trovato una soluzione utile al problema DesignMode durante lo sviluppo dei controlli?
Il problema è che se annidi i controlli, DesignMode funziona solo per il primo livello. Il secondo e il livello inferiore DesignMode restituiranno sempre FALSE.
L'hack standard è stato quello di guardare il nome del processo in esecuzione e se è "DevEnv.EXE" allora deve essere studio, quindi DesignMode è davvero TRUE.
Il problema con questo è cercare il ProcessName si fa strada attraverso il registro e altre parti strane con il risultato finale che l'utente potrebbe non avere i diritti necessari per vedere il nome del processo. Inoltre questo strano percorso è molto lento. Quindi abbiamo dovuto accumulare ulteriori hack per utilizzare un singleton e se viene generato un errore quando viene richiesto il nome del processo, presumere che DesignMode sia FALSE.
Un bel modo pulito per determinare DesignMode è in ordine. In realtà, convincere Microsoft a risolverlo internamente al framework sarebbe ancora meglio!