2011-05-25 64 views
2

我想动画的按钮的边框,但无法使其工作。这里是XAML我设置:问题试图获取按钮边框动画点击

<Button x:Name="Btn"> 
    <Button.Triggers> 
     <EventTrigger RoutedEvent="Button.Click"> 
      <BeginStoryboard> 
       <Storyboard Duration="100" AutoReverse="True" 
          Storyboard.TargetName="Btn"          
          Storyboard.TargetProperty="BorderBrush"> 
        <ColorAnimation To="Yellow" /> 
       </Storyboard> 
      </BeginStoryboard> 
     </EventTrigger> 
    </Button.Triggers> 
</Button> 

我得到这个错误:

Failed to assign to property 'System.Windows.EventTrigger.RoutedEvent'. [Line: 17 Position: 30] 

任何想法,为什么?总共noob在这。我正在使用Silverlight 4.

回答

1

Silverlight仅在事件触发器中支持Loaded事件。对于这类事情,您需要查看Visual State Manager。

该按钮已经支持称为“按下”的视觉状态。但是,为了更改按钮的可视化行为,您需要先复制其默认模板并将其放置在静态资源中。

您可以获得用于按钮here的默认样式的副本。让我们假设你给这个“MyButtonStyle”的x:Key

您可以将ColorAnimation添加到“Pressed”VisualState的现有Storyboard中。

然后你的按钮的XAML应该是:

<Button Style="{StaticResource MyButtonStyle}" Content="Click Me" />