Animate GradientStop
<Window x:Class="Animation.ImageWipe" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="ImageWipe" Height="300" Width="300"> <Grid> <Grid.RowDefinitions> <RowDefinition></RowDefinition> <RowDefinition Height="Auto"></RowDefinition> </Grid.RowDefinitions> <Grid> <Image Source="c:\image.jpg"></Image> <Image Source="c:\image.jpg" Name="imgDay"> <Image.OpacityMask> <LinearGradientBrush StartPoint="0,0" EndPoint="1,0"> <GradientStop Offset="0" Color="Transparent" x:Name="transparentStop" /> <GradientStop Offset="0" Color="Black" x:Name="visibleStop" /> </LinearGradientBrush> </Image.OpacityMask> </Image> </Grid> <Button Name="cmdStart" Grid.Row="1" Padding="5" Margin="5"> Start <Button.Triggers> <EventTrigger SourceName="cmdStart" RoutedEvent="Button.Click"> <BeginStoryboard> <Storyboard> <DoubleAnimation Storyboard.TargetName="transparentStop" Storyboard.TargetProperty="Offset" BeginTime="0:0:0.2" From="0" To="1" Duration="0:0:1" ></DoubleAnimation> <DoubleAnimation Storyboard.TargetName="visibleStop" Storyboard.TargetProperty="Offset" From="0" To="1.2" Duration="0:0:1.2" ></DoubleAnimation> </Storyboard> </BeginStoryboard> </EventTrigger> </Button.Triggers> </Button> </Grid> </Window>