0
我需要不同類型的在一個單一的風格各EventTrigger變換,只使用一個值的RenderTransform屬性正常工作是這樣的:不同的變換在一個單一的風格在WPF
<Setter Property="RenderTransform">
<Setter.Value>
<ScaleTransform ScaleX="1" ScaleY="1"/>
</Setter.Value>
</Setter>
但是,當我嘗試這樣做:
<Setter Property="RenderTransform">
<Setter.Value>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1"/>
<TranslateTransform X="0" Y="0"/>
</TransformGroup>
</Setter.Value>
</Setter>
我甚至無法存取權限在TargetProperty一個單一的財產,全作風它是由像這樣:
<Style TargetType="k:KinectTileButton" x:Key="BotonTutorial">
<Setter Property="Background" Value="White"/>
<Setter Property="BorderThickness" Value="6"/>
<Setter Property="ToolTip" Value="Empuja para seleccionar"/>
<Setter Property="Height" Value="400"/>
<Setter Property="Width" Value="250"/>
<Setter Property="FontSize" Value="18"/>
<Setter Property="RenderTransformOrigin" Value="0.5,0.5"/>
<Setter Property="RenderTransform">
<Setter.Value>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1"/>
<TranslateTransform X="0" Y="0"/>
</TransformGroup>
</Setter.Value>
</Setter>
<Style.Triggers>
<EventTrigger RoutedEvent="k:KinectTileButton.Loaded">
<EventTrigger.Actions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="(k:KinectTileButton.RenderTransform).(TranslateTransform.Y)" From="-50" To="0" Duration="0:0:1">
<DoubleAnimation.EasingFunction>
<CircleEase EasingMode="EaseOut"/>
</DoubleAnimation.EasingFunction>
</DoubleAnimation>
<DoubleAnimation Storyboard.TargetProperty="Opacity" From="0" To="1" Duration="0:0:1"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger.Actions>
</EventTrigger>
<!--More events-->
<EventTrigger RoutedEvent="k:KinectTileButton.MouseEnter">
<EventTrigger.Actions>
<BeginStoryboard>
<Storyboard>
<ColorAnimation Storyboard.TargetProperty="(k:KinectTileButton.Background).(SolidColorBrush.Color)" To="White" Duration="0:0:0.1" FillBehavior="HoldEnd"/>
<DoubleAnimation Storyboard.TargetProperty="(k:KinectTileButton.RenderTransform).(ScaleTransform.ScaleX)" From="1" To="1.3" Duration="0:0:0.5" FillBehavior="HoldEnd">
<DoubleAnimation.EasingFunction>
<CubicEase EasingMode="EaseOut"/>
</DoubleAnimation.EasingFunction>
</DoubleAnimation>
<DoubleAnimation Storyboard.TargetProperty="(k:KinectTileButton.RenderTransform).(ScaleTransform.ScaleY)" From="1" To="1.3" Duration="0:0:0.5" FillBehavior="HoldEnd">
<DoubleAnimation.EasingFunction>
<CubicEase EasingMode="EaseOut"/>
</DoubleAnimation.EasingFunction>
</DoubleAnimation>
</Storyboard>
</BeginStoryboard>
</EventTrigger.Actions>
</EventTrigger>
<!--End of the style-->
沒有TransformGroup我只能使用一個值或轉換,因此只有一個觸發器可以工作,我知道在添加按鈕時添加這個值會更容易,但是這將會用於很多按鈕。
感謝隊友,它的正常工作 –