2012-05-23 6 views
1

개체에 여러 개의 변환을 조합하여 검색하는 방법을 찾았지만 변환 그룹을 넣으려고하면 문제가 발생합니다. "에서 모든 속성 참조를 확인할 수 없습니다. 속성 경로 'RenderTransform.ScaleX'적용 가능한 개체가 속성을 지원하는지 확인하십시오. "wpf에서 transformgroup을 사용하면 오류가 발생합니다

여기에 내가 그물 ("이 코드를 만든 사람들에게 감사")

<Window.Resources> 
    <Storyboard x:Key="expandStoryboard"> 
     <DoubleAnimation Storyboard.TargetProperty="RenderTransform.ScaleX" 
    To="1.3" Duration="0:0:0.2" /> 
     <DoubleAnimation Storyboard.TargetProperty="RenderTransform.ScaleY" 
    To="1.3" Duration="0:0:0.2" /> 
    </Storyboard> 
    <Storyboard x:Key="shrinkStoryboard"> 
     <DoubleAnimation Storyboard.TargetProperty="RenderTransform.ScaleX" 
    To="1" Duration="0:0:0.2" /> 
     <DoubleAnimation Storyboard.TargetProperty="RenderTransform.ScaleY" 
    To="1" Duration="0:0:0.2" /> 
    </Storyboard> 
    <Storyboard x:Key="shakeStoryBoard"> 
     <DoubleAnimation Storyboard.TargetProperty="RenderTransform.Angle" 
          From="-5" To="5" Duration="0:0:0.05" 
          AutoReverse="True" 
          RepeatBehavior="3x" 
          FillBehavior="Stop" /> 
    </Storyboard> 

이것은 (버튼)

 <Button RenderTransformOrigin="0.5,0.5" Background="Transparent" Focusable="False" BorderBrush="Transparent" Height="220" HorizontalAlignment="Left" Margin="591,213,0,0" Name="cmdsettings" VerticalAlignment="Top" Width="189"> 
     <StackPanel Orientation="Vertical" HorizontalAlignment="Center" VerticalAlignment="Center" Width="217" Height="220"> 
      <Image HorizontalAlignment="Center" VerticalAlignment="Center" Source="Images/settings.png" Height="192" Width="204" /> 
      <TextBlock VerticalAlignment="center" TextAlignment="center" FontSize="16" Width="123" Foreground="white" FontWeight="Bold" Height="20">Settings</TextBlock> 
     </StackPanel> 
     <Button.Triggers> 
      <EventTrigger RoutedEvent="Button.MouseEnter"> 
       <BeginStoryboard Storyboard="{StaticResource expandStoryboard}" /> 
      </EventTrigger> 
      <EventTrigger RoutedEvent="Button.MouseLeave"> 
       <BeginStoryboard Storyboard="{StaticResource shrinkStoryboard}" /> 
      </EventTrigger> 
      <EventTrigger RoutedEvent="Button.Click"> 
       <BeginStoryboard Storyboard="{StaticResource shakeStoryBoard}" /> 
      </EventTrigger> 
     </Button.Triggers> 
     <Button.RenderTransform > 
      <TransformGroup> 
       <ScaleTransform ScaleX="1" ScaleY="1"/> 
       <RotateTransform /> 
      </TransformGroup>      
     </Button.RenderTransform> 
    </Button> 

답변

2

Button.RenderTransform을하기 때문에 내 목적을 복사 내 변환 코드의 TransformGroup이 포함되어 있으면 Children 속성에 포함 된 변환에 액세스해야합니다.

<DoubleAnimation Storyboard.TargetProperty="RenderTransform.Children[0].ScaleX" ... /> 
<DoubleAnimation Storyboard.TargetProperty="RenderTransform.Children[0].ScaleY" ... /> 
<DoubleAnimation Storyboard.TargetProperty="RenderTransform.Children[1].Angle" ... /> 
+0

답장을 보내 주셔서 대단히 감사드립니다. 예, 작동합니다! 이제 내 다음 계획은 내가 클릭 할 때 흩어져있는 버튼을하는 것입니다 .. 당신의 대답을 주셔서 감사합니다. – user1405327

관련 문제