我有DataTrigger
在网格行上设置Background.Color
动画。当Background
类型为SolidColorBrush时,它的效果很好,因为它具有Color属性。
但是当突出显示该网格行时,背景变为LinearGradientBrush,does not have a Color属性和我的故事板失败并出现异常。我该如何处理?
这是我的触发器
<DataTrigger Binding="{Binding Row.State}" Value="Finished">
<DataTrigger.EnterActions>
<BeginStoryboard>
<Storyboard >
<ColorAnimation
Storyboard.TargetProperty="Background.(Color)"
To="LightGreen" Duration="0:0:1" />
</Storyboard>
</BeginStoryboard>
</DataTrigger.EnterActions>
</DataTrigger>
以下是突出显示行时获得的异常。
其他信息:无法解析属性路径中的所有属性引用&quot;背景。(颜色)&#39;。验证适用的对象是否支持属性。
答案 0 :(得分:0)
我修好了。
我使用了Storyboard.TargetProperty
这样的
Storyboard.TargetProperty="Background.(SolidColorBrush.Color)"
显然,它会按名称SolidColorBrush
查找类型。
有关括号的更多信息,请at MSDN
在多个对象和子属性表单中,必须使用拥有对象来消除初始属性的歧义,并将括号放在此初始object.property组合周围。此后,子属性只需要命名,不具有拥有类型的限定条件,但这些子属性必须存在于前面属性的值类型中。对后续子属性拥有类型进行限定的稍微冗长的形式也是可以接受的;例如,“(Rectangle.Fill)。(SolidColorBrush.Color)”。