У меня есть приложение WPF (.NET 3.0, VS2008), которое отображает данные в элементе управления с вкладками. Пользовательские цвета требуются практически для всех элементов управления в этом приложении: в основном белый передний план и зеленый фон.
Моя проблема в том, что когда тема XP (скажем, Luna) активна, она автоматически применяется для визуализации элементов управления, так что мой белый текст написан на ... белом фоне. Например, в заголовке элемента активной вкладки:
Я пробовал:
- для удаления файла встроенного манифеста из сгенерированного приложения (в свойствах проекта): бесполезно.
для принудительного использования темы Windows Classic в ресурсах приложения:
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/PresentationFramework.Classic;V3.0.0.0;31bf3856ad364e35;component/themes/classic.xaml" />
</ResourceDictionary.MergedDictionaries>
Эта последняя попытка отлично работала для всех элементов управления, кроме вкладки, которая по-прежнему отображается, как указано выше.
Есть идеи?
Обновление : я подозреваю, что это связано с пользовательским стилем, который я должен применить к элементу управления вкладками:
<Window.Resources>
<Style x:Key="Custom">
<Setter Property="Control.Background" Value="#FF47C7C8" />
<Setter Property="Control.Foreground" Value="White" />
</Style>
<Style TargetType="TabControl" BasedOn="{StaticResource Custom}" />
</Window.Resources>
Так как я могу получить классическую тему с пользовательскими цветами?