2012-03-12 10 views
12

मैं इस तरह कुछ करना चाहता हूँ:WPF स्टाइलिंग रंग

संसाधन शब्दकोश

<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> 

हो रही है अपवाद:

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

इसे नीचे व्यवस्थित करना परेशानी हो रही है, किसी भी कर सकते हैं एक सही दिशा में मुझे एक बिंदु?

उत्तर

18

BackgroundBrush है, Color नहीं। आपकी सबसे अच्छी शर्त रंगों की बजाय ब्रश के रूप में अपने "प्राथमिक" और "माध्यमिक" संसाधनों को परिभाषित करना है।

बहुत यकीन है कि आप अपने मौजूदा रंगों से ब्रश का आधार भी बना सकते हैं।

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

ऐसा लगता है कि आप ऐसा कर सकते हैं, धन्यवाद। – AGoodDisplayName

1

पृष्ठभूमि संपत्ति प्रकार System.Windows.Media.Brush, न कि एक रंग की है।

5

पृष्ठभूमि संपत्ति को काम करने के लिए ब्रश की आवश्यकता होती है।

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