2011-12-17 52 views
1

XAML新手...我想做一些简单的动画。我试图从这个链接遵循MSDN的示例代码:Click Here在XAML中创建动画时出错

<StackPanel> 
    <StackPanel.Resources> 
     <Storyboard x:Name="myStoryboard"> 
      <DoubleAnimation 
      Storyboard.TargetName="MyAnimatedRectangle" 
      Storyboard.TargetProperty="Opacity" 
      From="1.0" To="0.0" Duration="0:0:5" 
      AutoReverse="True" RepeatBehavior="Forever" /> 
     </Storyboard> 
    </StackPanel.Resources> 

    <Rectangle Loaded="Start_Animation" x:Name="MyAnimatedRectangle" 
    Width="100" Height="100" Fill="Blue" /> 

</StackPanel> 

我不断收到此错误:“所有对象添加到一个IDictionary必须有一个与之相关的关键属性,11号线位置18”

这个错误是什么意思?我如何解决它?

回答

2

StackPanel因为每个FrameworkElement有一个属性Recources这是一个ResourceDictionary,你只能添加元素,有与x:Key属性,以确定他们(基本上这一个IDictioanry<string, object>)。所以,你需要一个x:Key添加到您的故事板:

<Storyboard x:Name="myStoryboard" x:Key="myStoryboardKey"> 

MSDN上的样本是错误的或他们的意思x:Key="myStoryboard"而不是x:Name="myStoryboard"

+0

好的,谢谢,错误解决了... – BigBug 2011-12-17 08:37:48