Mega Code Archive

 
Categories / Silverlight / UI Controls
 

Click to scale a Button

<UserControl x:Class='SilverlightApplication3.MainPage'     xmlns='http://schemas.microsoft.com/winfx/2006/xaml/presentation'      xmlns:x='http://schemas.microsoft.com/winfx/2006/xaml'     xmlns:d='http://schemas.microsoft.com/expression/blend/2008'      xmlns:mc='http://schemas.openxmlformats.org/markup-compatibility/2006'      mc:Ignorable='d'      d:DesignWidth='640'      d:DesignHeight='480'>     <Grid>         <Button Name="btnSpinMe" Content="Spin Me" Width="100" Height="50">             <Button.Background>                 <RadialGradientBrush Center="0.5,0.5" RadiusX="1.0" RadiusY="1.0">                     <GradientStop Color="Yellow" Offset="0.0" />                     <GradientStop Color="Orange" Offset="1.0" />                 </RadialGradientBrush>             </Button.Background>             <Button.RenderTransform>                 <TransformGroup>                     <RotateTransform x:Name="rotButton" Angle="0" CenterX="50" CenterY="25" />                     <ScaleTransform x:Name="scaButton" ScaleX="1" ScaleY="1" CenterX="50" CenterY="25" />                 </TransformGroup>             </Button.RenderTransform>             <Button.Triggers>                 <EventTrigger RoutedEvent="Button.Click">                     <EventTrigger.Actions>                         <BeginStoryboard>                             <Storyboard>                                 <!-- ScaleX -->                                 <DoubleAnimationUsingKeyFrames Storyboard.TargetName="scaButton" Storyboard.TargetProperty="(ScaleTransform.ScaleX)">                                     <SplineDoubleKeyFrame KeyTime="0:0:00.0" Value="1.0" />                                     <SplineDoubleKeyFrame KeyTime="0:0:00.5" Value="2.0" />                                     <SplineDoubleKeyFrame KeyTime="0:0:01.0" Value="1.0" />                                 </DoubleAnimationUsingKeyFrames>                                 <!-- ScaleY -->                                 <DoubleAnimationUsingKeyFrames Storyboard.TargetName="scaButton" Storyboard.TargetProperty="(ScaleTransform.ScaleY)">                                     <SplineDoubleKeyFrame KeyTime="0:0:00.0" Value="1.0" />                                     <SplineDoubleKeyFrame KeyTime="0:0:00.5" Value="2.0" />                                     <SplineDoubleKeyFrame KeyTime="0:0:01.0" Value="1.0" />                                 </DoubleAnimationUsingKeyFrames>                             </Storyboard>                         </BeginStoryboard>                     </EventTrigger.Actions>                 </EventTrigger>             </Button.Triggers>         </Button>     </Grid> </UserControl>