Desidero modificare il colore del tema Metro di AvalonDock. Ho anche chiesto a related question on Codeplex ma non ho avuto una risposta finora.Cambia stile di tema esistente (AvalonDock)
ho individuato le seguenti XAML (source file) come il pezzo che, immagino, è responsabile per il colore che voglio cambiare:
<Style TargetType="avalonDockControls:AnchorablePaneTitle">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
...
<ControlTemplate.Triggers>
...
<DataTrigger Binding="{Binding Model.IsActive, RelativeSource={RelativeSource Mode=Self}}" Value="True">
<!-- following XAML line -->
<Setter Property="BorderBrush" Value="{DynamicResource AvalonDock_ThemeMetro_BaseColor3}" />
<Setter Property="BorderThickness" Value="0,3,0,0"/>
</DataTrigger>
...
</ControlTemplate.Triggers>
...
è possibile vedere: il pennello ottiene il BaseColor3 (un colore bluastro di default).
Ora ho cambiato il colore del genere nel mio XAML:
<Window.Resources>
...
<SolidColorBrush x:Key="AvalonDock_ThemeMetroBaseColor3" Color="Red" />
</Window.Resources>
non cambia nulla. Il colore rimane bluastro. Ora sono confuso. Quindi deve essere la proprietà sbagliata da modificare o qualcosa impedisce il cambiamento del colore o/e interno usa il vecchio valore o qualcosa del genere ...
Perché non funziona? Come posso scoprire questi problemi e risolverlo?
Hai copiato [theme.xaml] (https://avalondock.codeplex.com/SourceControl/latest#Version2.0/Xceed.Wpf.AvalonDock.Themes.Metro/Theme.xaml)? L'ho visto e utilizza diversi 'BaseColorXX' che non esistono nemmeno in [brushes.xaml] (https://avalondock.codeplex.com/SourceControl/latest#Version2.0/Xceed.Wpf.AvalonDock .Themes.Metro/Brushes.xaml), come mai? – JobaDiniz
@JobaDiniz Ho provato a copiare tutto, incluso Theme.xaml. Ho dovuto aggiungere alcune definizioni di 'BaseColorXX' a Brushes.xaml. Li ho copiati da un precedente Brushes.xaml dalla sorgente. Ad esempio [questo] (https://avalondock.codeplex.com/SourceControl/changeset/89595#Version2.0/AvalonDock/AvalonDock.Theme.VS2010/Brushes.xaml) è stato il primo impegno di Brushes.xaml e conteneva tutto il necessario definizioni. – fedab
Grazie, ma hai cambiato i loro valori, giusto? Ad esempio, 'BaseColor31' (dal tuo link) è giallastro che non si adatta allo stile metro. – JobaDiniz