【发布时间】:2010-11-15 02:58:31
【问题描述】:
我的应用程序中的某些键颜色作为动态资源加载。除了 ColorAnimation 之外,大多数控件都可以正常工作。为此,它会引发异常:
无法将属性“To”中的值转换为“System.Nullable`1[[System.Windows.Media.Color, PresentationCore, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]] 类型的对象. “#FF93CF65”不是属性“To”的有效值。
我在样式中使用完全相同的资源,在这种情况下它工作得很好。有问题的xaml如下所示:
<Style x:Key="ChildWindowButtonBarButtonStyle" TargetType="{x:Type Button}">
<Setter Property="BorderBrush" Value="{DynamicResource ButtonBorder}" />
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="BorderBrush" Value="#ffffb14c" />
</Trigger>
<Trigger Property="IsEnabled" Value="false">
<Trigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation BeginTime="00:00:00" Duration="00:00:00.8" Storyboard.TargetProperty="Opacity" From="1" To=".5" />
</Storyboard>
</BeginStoryboard>
</Trigger.EnterActions>
<Trigger.ExitActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation BeginTime="00:00:00" Duration="00:00:00.4" Storyboard.TargetProperty="Opacity" From=".5" To="1" />
<ColorAnimation BeginTime="00:00:00" Duration="00:00:00.2" Storyboard.TargetProperty="(Border.BorderBrush).(SolidColorBrush.Color)" To="Green"/>
<ColorAnimation BeginTime="00:00:00.3" Duration="00:00:00.4" Storyboard.TargetProperty="(Border.BorderBrush).(SolidColorBrush.Color)" To="{StaticResource ButtonBorder}"/>
</Storyboard>
</BeginStoryboard>
</Trigger.ExitActions>
</Trigger>
</Style.Triggers>
</Style>
有人对此有任何想法吗?
- 戴夫
【问题讨论】:
标签: wpf silverlight xaml