Почему я не могу стилизовать элемент управления с помощью темы Aero, примененной в WPF 4.0?

Недавно я преобразовал проект из WPF 3.5 в WPF 4.0. Функционально все работает, но стиль DataGrid, который я применял поверх темы Aero, внезапно перестал работать. Как вы можете видеть из изображений до / после ниже, мои DataGrids перешли от вида Aero с жирными заголовками, дополнительными отступами и чередующимися форматами строк до простого «Aero». Помимо удаления всех ссылок на WPF Toolkit (поскольку DataGrid теперь является родным для WPF 4.0), я действительно ничего не менял в своем коде / разметке.

До (WPF Toolkit DataGrid)

Looks like Aero w/ bold headings, extra padding, and alternate row styles

После (.NET 4.0 DataGrid)

Looks like Aero w/ nothing

Как я узнал в более раннем вопросе , я могу заставить настраиваемый стиль DataGrid снова работать, если я перестану ссылаться на словарь ресурсов Aero, но тогда все будет выглядеть «Luna» в Windows XP (это не то, что я хочу).

Итак, как мне убедиться, что мое приложение всегда использует тему Aero, но по-прежнему применять стили поверх этой темы в WPF 4.0 ?

Вот мой код App.xaml:


    
        
            
                
                
            
        
    

Вот мой код DataGridResourceDictionary.xaml:


    
    
    
    

Вот пример использования:


    
        
        
        
    

Править

Мне просто пришло в голову, что, возможно, проблема в том, что я ссылаюсь не на ту версию фреймворка Aero.

Вот что у меня сейчас:


Следует ли обновить его до версии 4.0? Что такое PublicKeyToken для версии 4 (или как мне это выяснить)?

13
задан Community 23 May 2017 в 12:01
поделиться