2010-02-26 77 views
0

我正在尝试对多边形的填充属性执行彩色动画并获取此错误 - 无法将属性'样式'中的值转换为类型为'System.Windows.Style'的对象”。无法解析属性路径'Fill.Color'中的所有属性引用。验证适用的对象是否支持这些属性。标记文件中对象'System.Windows.Shapes.Polygon'出错。WPF - 多边形上的颜色动画

任何想法?请参阅下面我的XAML风格。谢谢。

<Style TargetType="{x:Type Polygon}" x:Key="ArrowStyle"> 
     <Style.Triggers> 
      <DataTrigger Value="True"> 
       <DataTrigger.Binding> 
        <MultiBinding Converter="{StaticResource NumberIsLessThanParameter}"> 
         <Binding Path="Value" Mode="OneWay"/> 
         <Binding Path="OldValue" Mode="OneWay"/> 
        </MultiBinding> 
       </DataTrigger.Binding> 
       <DataTrigger.EnterActions> 

        <BeginStoryboard Name="ToRedArrow"> 
         <Storyboard TargetProperty="Fill.Color"> 
          <ColorAnimation From="Transparent" To="Red" Duration="0:0:2" AutoReverse="False" /> 
         </Storyboard> 
        </BeginStoryboard> 
       </DataTrigger.EnterActions> 
      </DataTrigger> 
      <DataTrigger Value="False"> 
       <DataTrigger.Binding> 
        <MultiBinding Converter="{StaticResource NumberIsLessThanParameter}"> 
         <Binding Path="Value" Mode="OneWay"/> 
         <Binding Path="OldValue" Mode="OneWay"/> 
        </MultiBinding> 
       </DataTrigger.Binding> 
       <DataTrigger.EnterActions> 
        <BeginStoryboard Name="ToBlueArrow"> 
         <Storyboard TargetProperty="Fill.Color"> 
          <ColorAnimation From="Transparent" To="Blue" Duration="0:0:2" AutoReverse="False"/> 
         </Storyboard> 
        </BeginStoryboard> 
       </DataTrigger.EnterActions> 
      </DataTrigger> 
     </Style.Triggers> 
    </Style> 

回答

0

属性路径看起来无效。尝试将其更改为:(Shape.Fill).(SolidColorBrush.Color)

+0

现在我收到此错误:无法将属性'样式'中的值转换为'System.Windows.Style'类型的对象。 'Fill'属性不指向路径'(0)。(1)'中的DependencyObject。标记文件中对象'System.Windows.Shapes.Polygon'出错。 – Alberto 2010-02-26 14:37:31

+1

看起来像错误是由于填充属性未被初始化。但是现在我得到一个奇怪的行为 - 它从不变成红色。 – Alberto 2010-02-26 16:40:39