2012-03-12 16 views
12

chcę zrobić coś takiego:WPF stylizacji Kolory

zasobów słownik

<Color x:Key="clrPrimary">#5381ac</Color> 
<Color x:Key="clrSecondary">#20558a</Color> 

<Style TargetType="Grid" x:Key="myGrid"> 
    <Setter Property="Background" Value="{StaticResource clrPrimary"/> 
</Style> 

Uzyskiwanie wyjątek:

'#FF5381AC' is not a valid value for property 'Background'. 

Kłopoty przybijając go w dół, może każdy jeden punkt mnie we właściwym kierunku?

Odpowiedz

18

Background to Brush, a nie Color. Najlepiej jest zdefiniować zasoby "Podstawowy" i "Drugorzędny" jako szczotki, a nie kolory.

Na pewno można nawet oprzeć szczotki na istniejących kolorach.

<SolidColorBrush x:Key="PrimaryBrush" Color="{StaticResource clrPrimary}" /> 
... 
    <Setter Property="Background" Value="{StaticResource PrimaryBrush}" /> 
+0

Wygląda na to, dzięki. – AGoodDisplayName

1

Właściwość tła jest typu System.Windows.Media.Brush, a nie kolor.

5

Własność tła wymaga użycia pędzla.

<Window.Resources> 
    <SolidColorBrush x:Key="clrPrimary" Color="#5381ac" /> 
</Window.Resources> 
Powiązane problemy