#c# #winforms #visual-styles
#c# #winforms #визуальные стили
Вопрос:
Итак, в моем файле program.cs этот код по умолчанию работает идеально:
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault (false);
Application.Run (new frmClarity());
Однако, если я попытаюсь добавить инструкцию using, EnableVisualStyles (), похоже, больше не выполняется! Никаких ошибок, он просто не стилизует формы. Обе эти попытки приводят к тому, что визуальные стили не выполняются:
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault (false);
using (new Impersonator.Impersonator (
ConfigurationManager.AppSettings ["login"], ConfigurationManager.AppSettings ["domain"],
ConfigurationManager.AppSettings ["password"])) {
Application.Run (new frmClarity());
}
}
или
using (new Impersonator.Impersonator (
ConfigurationManager.AppSettings ["login"], ConfigurationManager.AppSettings ["domain"],
ConfigurationManager.AppSettings ["password"])) {
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault (false);
Application.Run (new frmClarity());
}
}
Кто-нибудь знает, почему добавление оператора USING в program.cs вызывает это странное поведение?
Комментарии:
1. Он должен выполняться до создания любых окон. Мы не можем видеть, что делает имитатор, синтаксическая ошибка точно не помогает. Нет веских причин откладывать это.
2. Имперсонатор не создает окон. Это просто изменяет учетную запись, под которой запущено приложение. Извините за синтаксическую ошибку — я поместил дополнительную фигурную скобку выше. В моем исполняемом коде нет синтаксических ошибок). В моем первом «не работающем» примере EnableVisualStyles() — это самое первое, что выполняется.