Как заставить визуальное представление Visual Studio отображать в классической теме?
Моя проблема заключается в следующем:
Я проектирую свое приложение WPF в Visual Studio 2010 для Windows 8. Я знаю, что приложение будет использоваться только в классическом режиме Windows XP.
То, что я вижу в режиме проектирования Visual Studio, не соответствует моим возможным результатам в Windows XP. Шрифт немного другой, поэтому некоторые текстовые поля оказываются слишком маленькими или слишком большими.
Есть ли способ заставить дизайн-представление Visual Studio использовать классическую тему Windows XP вместо той, что есть в моей нынешней ОС, или самую современную, которую она может использовать?
Я пробовал следующее:
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/PresentationFramework.Classic;component/themes/classic.xaml" />
</ResourceDictionary.MergedDictionaries>
Не повезло, однако.
1 ответ
Я думаю, что вам нужно использовать Expression Blend, чтобы визуализировать время разработки с классической темой. Он более продвинутый, чем дизайнер, доступный в VS 2010. Конструктор xaml в VS 2012 обновлен, чтобы иметь больше расширенных функций от Blend, а также для поддержки рендеринга с указанной темой во время разработки в Visual Studio.
Поэтому, если вам нужен WYSIWYG-дизайнер с классической темой, вы можете сделать это, используя Blend и такой ресурс, как:
<Application.Resources>
<ResourceDictionary Source="/PresentationFramework.Classic;component/themes/classic.xaml" />
</Application.Resources>
Результат конструктора в Blend выглядит следующим образом (Blend для Visual Studio 2012):
Чтобы прояснить разницу между VS 2010 и VS 2012:
- VS 2010 WPF дизайнер ограничен, если продолжить с 2010, вам нужно использовать Expression Blend, чтобы получить реальную тему в режиме дизайна
- VS 2012 имеет новый лучший дизайнер WPF, основанный на Blend
- Blend для VS 2012 поставляется с VS 2012, но ограничен проектами ModernUI в версии RTM
- Blend для VS 2012 нуждается в обновлении 2 (в настоящее время доступен CTP 4) для обработки проектов WPF для настольных приложений, как сказал лордчито в своем комментарии