2012-07-11 76 views
1

我试图用故事板翻转表单上的按钮。我目前拥有的是使用定制网格动画制作某些网格行的故事板(发现here)。我拥有的启动此故事板的按钮上有一个箭头叠加的图像,需要将其翻转来纠正控件的方向,以便用户理解。我有作品的故事板(因为它不会产生任何错误),但它只会使栅格高度属性增加;按钮图像不会垂直翻转。翻转故事板中的按钮

<!-- "Open the description box" Storyboard--> 
<Storyboard x:Key="openDescription"> 
    <local:GridLengthAnimation 
     Storyboard.TargetName="Row4" 
     Storyboard.TargetProperty="Height" 
     From="0*" To=".5*" Duration="0:0:1" 
     AccelerationRatio=".5" 
     DecelerationRatio=".5"/> 

    <!-- This is the section that needs to be tweaked --> 
    <DoubleAnimation 
     Storyboard.TargetName="btnDetailsZoom" 
     Storyboard.TargetProperty="(UIElement.RenderTransform).(ScaleTransform.ScaleY)" 
     From="0" 
     To="-1" 
     Duration="00:00:01"/> 
</Storyboard> 

<!-- Code for the button --> 
<s:SurfaceButton Grid.Row="4" Grid.Column="4" VerticalAlignment="Top" Margin="25,-50,25,-50" Name="btnDetailsZoom" PreviewTouchDown="onDetailsZoom"> 
    <s:SurfaceButton.Background> 
     <ImageBrush ImageSource="/uiTest2;component/Resources/doubleArrowUp.png" /> 
    </s:SurfaceButton.Background> 
</s:SurfaceButton> 

如果有人知道如何正确地使用故事板内的scaletransform财产(因为我相当肯定这是部分正确的),我将不胜感激一些指导。

谢谢!

回答

2

看起来你忘了定义在Button Transform属性,像这样:

<!-- Code for the button --> 
<s:SurfaceButton Grid.Row="4" Grid.Column="4" VerticalAlignment="Top" Margin="25,-50,25,-50" Name="btnDetailsZoom" PreviewTouchDown="onDetailsZoom"> 
    <s:SurfaceButton.RenderTransform> 
     <ScaleTransform /> 
    </s:SurfaceButton.RenderTransform> 
    <s:SurfaceButton.Background> 
     <ImageBrush ImageSource="/uiTest2;component/Resources/doubleArrowUp.png" /> 
    </s:SurfaceButton.Background> 
</s:SurfaceButton> 
+0

哇哦。我认为ScaleTransform属性是隐含的。这工作像一个魅力。非常感谢! – 2012-07-12 12:59:47

+0

是的,我知道这种感觉......当我第一次遇到它时,我偶然发现了2个小时。 :) – 2012-07-12 13:05:53