Hi,
I have a control which has 4 states defined something like this :
<Grid x:Name="LayoutRoot">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="VisualStateGroup">
<VisualStateGroup.Transitions>
<VisualTransition GeneratedDuration="00:00:00.4000000"/>
<VisualTransition From="AnimateUp" GeneratedDuration="00:00:00.4000000" To="Normal"/>
<VisualTransition From="AnimateDown" GeneratedDuration="00:00:00.4000000" To="Normal"/>
<VisualTransition From="AnimateRight" GeneratedDuration="00:00:00.4000000" To="Normal"/>
<VisualTransition From="AnimateLeft" GeneratedDuration="00:00:00.4000000" To="Normal"/>
</VisualStateGroup.Transitions>
<VisualState x:Name="Normal"/>
<VisualState x:Name="AnimateUp">
<Storyboard>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Duration="00:00:00.0010000" Storyboard.TargetName="grdProjection" Storyboard.TargetProperty="(UIElement.Projection).(PlaneProjection.RotationX)">
<EasingDoubleKeyFrame KeyTime="00:00:00" Value="-33"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="AnimateDown">
<Storyboard>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Duration="00:00:00.0010000" Storyboard.TargetName="grdProjection" Storyboard.TargetProperty="(UIElement.Projection).(PlaneProjection.RotationX)">
<EasingDoubleKeyFrame KeyTime="00:00:00" Value="44"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="AnimateRight">
<Storyboard>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Duration="00:00:00.0010000" Storyboard.TargetName="grdProjection" Storyboard.TargetProperty="(UIElement.Projection).(PlaneProjection.RotationY)">
<EasingDoubleKeyFrame KeyTime="00:00:00" Value="-33"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="AnimateLeft">
<Storyboard>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Duration="00:00:00.0010000" Storyboard.TargetName="grdProjection" Storyboard.TargetProperty="(UIElement.Projection).(PlaneProjection.RotationY)">
<EasingDoubleKeyFrame KeyTime="00:00:00" Value="33"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Grid x:Name="grdProjection" Margin="45,35,50,52" MouseMove="grdProjection_MouseMove">
<Grid.Projection>
<PlaneProjection/>
</Grid.Projection>
<Grid.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#FF5B5B5B" Offset="0"/>
<GradientStop Color="#FF8E8E8E" Offset="1"/>
</LinearGradientBrush>
</Grid.Background>
</Grid>
</Grid>
Now I want to call different states on MouseMove. For example when mouse direction is up I want to call AnimateUp state, when direction is down it will call AnimateDown state , so on.
Somebody please help me by giving me some idea.