Кто-нибудь нашел полезное решение проблемы DesignMode при разработке элементов управления?
Проблема в том, что если вы вставляете элементы управления, то DesignMode работает только для первого уровня. Второй и нижний уровни DesignMode всегда будут возвращать FALSE.
Стандартным взломом было посмотреть имя запущенного процесса, и если это "DevEnv.EXE", тогда он должен быть студией, поэтому DesignMode действительно TRUE.
Проблема с поиском ProcessName пробивается через реестр и другие странные части, в результате чего пользователь может не иметь необходимых прав на просмотр имени процесса. Кроме того, этот странный маршрут очень медленный. Таким образом, нам пришлось собрать дополнительные хаки для использования синглета, и если при запросе имени процесса возникает ошибка, предположим, что DesignMode FALSE.
Хороший чистый способ определения DesignMode в порядке. Повсеместно заставить Microsoft исправить ее внутри рамки будет еще лучше!