MatrixAnimationUsingPath.IsAdditive Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém ou define um valor que indica se o valor atual da propriedade de destino deve ser adicionado ao valor inicial dessa animação.
public:
property bool IsAdditive { bool get(); void set(bool value); };
public bool IsAdditive { get; set; }
member this.IsAdditive : bool with get, set
Public Property IsAdditive As Boolean
Valor da propriedade
true
se o valor atual da propriedade de destino deve ser adicionado ao valor inicial dessa animação; caso contrário, false
. O padrão é false
.
Exemplos
O exemplo a seguir usa duas animações semelhantes MatrixAnimationUsingPath para animar o mesmo retângulo. A propriedade da IsAdditive primeira animação é definida como false
, portanto, ela sempre anima o retângulo de (0,0), o valor inicial da animação. A segunda animação tem os mesmos valores de destino (suas PathGeometry configurações são idênticas), mas sua IsAdditive propriedade é definida true
como; como resultado, anima o retângulo de qualquer posição em que esteja quando a animação é aplicada.
<Page
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:PresentationOptions="http://schemas.microsoft.com/winfx/2006/xaml/presentation/options"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="PresentationOptions">
<StackPanel>
<!-- The Rectangle that is animated across the screen by animating
the MatrixTransform applied to the button. -->
<Rectangle
Width="50" Height="20"
Fill="Blue"
HorizontalAlignment="Left"
VerticalAlignment="Top">
<Rectangle.RenderTransform>
<MatrixTransform x:Name="myMatrixTransform">
<MatrixTransform.Matrix >
<Matrix OffsetX="10" OffsetY="100"/>
</MatrixTransform.Matrix>
</MatrixTransform>
</Rectangle.RenderTransform>
</Rectangle>
<StackPanel Margin="0,200,0,0" Orientation="Horizontal">
<Button Content="Animate with IsAdditive set to False"
HorizontalAlignment="Left" Padding="5">
<Button.Triggers>
<EventTrigger RoutedEvent="Button.Click">
<BeginStoryboard>
<Storyboard>
<!-- This animation always moves the
rectangle back to (0,0). -->
<MatrixAnimationUsingPath
Storyboard.TargetName="myMatrixTransform"
Storyboard.TargetProperty="Matrix"
Duration="0:0:2"
DoesRotateWithTangent="True"
IsAdditive="False">
<MatrixAnimationUsingPath.PathGeometry>
<PathGeometry
Figures="M 0,0 C 35,0 135,0 160,100 180,190 285,200 310,100" />
</MatrixAnimationUsingPath.PathGeometry>
</MatrixAnimationUsingPath>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Button.Triggers>
</Button>
<Button Content="Animate with IsAdditive set to True"
HorizontalAlignment="Left"
Padding="5">
<Button.Triggers>
<EventTrigger RoutedEvent="Button.Click">
<BeginStoryboard>
<Storyboard>
<!-- This animation moves the rectangle from
its current position. -->
<MatrixAnimationUsingPath
Storyboard.TargetName="myMatrixTransform"
Storyboard.TargetProperty="Matrix"
Duration="0:0:2"
DoesRotateWithTangent="True"
IsAdditive="True">
<MatrixAnimationUsingPath.PathGeometry>
<PathGeometry
Figures="M 0,0 C 35,0 135,0 160,100 180,190 285,200 310,100" />
</MatrixAnimationUsingPath.PathGeometry>
</MatrixAnimationUsingPath>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Button.Triggers>
</Button>
</StackPanel>
</StackPanel>
</Page>
Comentários
Informações da propriedade de dependência
Campo identificador | IsAdditiveProperty |
Propriedades de metadados definidas como true |
Nenhum |
Observação
Essa propriedade de dependência é incomum porque o campo de identificador para ela vem AnimationTimeline e é compartilhado por várias classes derivadas.