2017-07-27 2 views
2

Gegeben eine Settings.settings Datei, die einen oder mehrere SolidColorBrush Einträge enthält, mit Application Geltungsbereich, wie kann ich diese Werte an XAML-Stilvorlagen binden?Bindungseinstellungen basierend auf SolidColorBrush direkt in XAML

Zum Beispiel werde ich ein SolidColorBrushMyAppColor mit #FF0091D2 als Wert mit dem Namen und einer benutzerdefinierten Button Stilvorlage, wo ich die Background will von MyAppColor die Farbe haben. Wie kann ich das erreichen?


ich bereits versucht haben, einen namespace (?) an die XAML-Datei hinzufügen, wie folgt aus:

xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
xmlns:properties="clr-namespace:namespace.Properties" 

dann die properties wie folgt zu verwenden versucht:

Background="{x:Static properties:Settings.Default.MyAppColor}" 

Aber es sagt Es kann keine verschachtelten Typen haben.

Antwort

1

während Settings.Default ist statisch, MyAppColor Eigenschaft ist nicht. (Settings.Default ist effektiv ein Singletone). Verwenden Sie die Erweiterung {x: Static}, um Binding.Source zu setzen und wie üblich zur Verfügung zu stellen:

Background="{Binding Path=MyAppColor, Source={x:Static properties:Settings.Default}}" 
Verwandte Themen