如何将颜色从“设置”绑定到动画

时间:2015-06-11 06:51:04

标签: c# wpf xaml

我在Properties.Settings文件中定义了一些主题颜色(System.Windows.Media.Colors),并希望能够将它们绑定到某些动画。然而,我不明白如何做到这一点。我没有问题像这样创建一个SolidColorBrush。

 <SolidColorBrush x:Key="ThemeSolidColorBrushPaleGray" 
    Color="{Binding Source={StaticResource settingsProvider}, 
    Path=Default.ThemeColorPaleGray}"/>

我可以绑定到XAML中定义的颜色

<Color x:Key="PaleGray2Color">#FF808080</Color> 
<ColorAnimation Storyboard.TargetName="BackgroundBrush" Storyboard.TargetProperty="Color"                                                 
                  To="{StaticResource PaleGray2Color}" 
                        Duration="00:00:02.00"/>

但是以下在运行时失败

<ColorAnimation Storyboard.TargetName="BackgroundBrush" Storyboard.TargetProperty="Color"                                                 
     To="{Binding Source={StaticResource settingsProvider}, 
        Path=Default.ThemeColorPaleGray}" 
             Duration="00:00:02.00"/>

有什么想法吗?

1 个答案:

答案 0 :(得分:-1)

你可以重写你的xaml并按照以下方式尝试:

<ColorAnimation Storyboard.TargetName="BackgroundBrush" Storyboard.TargetProperty="Background.(SolidColorBrush.Color)"               Duration="00:00:02.00"                                   
     To="{Binding Source={StaticResource settingsProvider}, 
        Path=Color}"/>