Недавно я преобразовал проект из WPF 3.5 в WPF 4.0. Функционально все работает, но стиль DataGrid, который я применял поверх темы Aero, внезапно перестал работать. Как вы можете видеть из изображений до / после ниже, мои DataGrids перешли от вида Aero с жирными заголовками, дополнительными отступами и чередующимися форматами строк до простого «Aero». Помимо удаления всех ссылок на WPF Toolkit (поскольку DataGrid теперь является родным для WPF 4.0), я действительно ничего не менял в своем коде / разметке.
До (WPF Toolkit DataGrid)
После (.NET 4.0 DataGrid)
Как я узнал в более раннем вопросе , я могу заставить настраиваемый стиль DataGrid снова работать, если я перестану ссылаться на словарь ресурсов Aero, но тогда все будет выглядеть «Luna» в Windows XP (это не то, что я хочу).
Итак, как мне убедиться, что мое приложение всегда использует тему Aero, но по-прежнему применять стили поверх этой темы в WPF 4.0 ?
Вот мой код App.xaml:
Вот мой код DataGridResourceDictionary.xaml:
Вот пример использования:
Править
Мне просто пришло в голову, что, возможно, проблема в том, что я ссылаюсь не на ту версию фреймворка Aero.
Вот что у меня сейчас:
Следует ли обновить его до версии 4.0? Что такое PublicKeyToken
для версии 4 (или как мне это выяснить)?