MatrixAnimationUsingPath.IsAdditive Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nebo nastaví hodnotu, která označuje, zda je aktuální hodnota cílové vlastnosti by měla být přidána k počáteční hodnotě této animace.
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
Hodnota vlastnosti
true
pokud aktuální hodnota cílové vlastnosti by měla být přidána k počáteční hodnotě této animace; v opačném případě . false
Výchozí formát je false
.
Příklady
Následující příklad používá dvě podobné MatrixAnimationUsingPath animace k animaci stejného obdélníku. Vlastnost první animace IsAdditive je nastavená na false
, takže vždy animuje obdélník z počáteční hodnoty animace (0,0). Druhá animace má stejné cílové hodnoty (jejich PathGeometry nastavení jsou identická), ale její IsAdditive vlastnost je nastavená na true
hodnotu ; v důsledku toho animuje obdélník z libovolné pozice, na které je při použití animace.
<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>
Poznámky
Informace o vlastnosti závislosti
Pole Identifikátor | IsAdditiveProperty |
Vlastnosti metadat nastavené na true |
Žádné |
Poznámka
Tato vlastnost závislosti je neobvyklá, protože pole identifikátoru pochází z AnimationTimeline různých odvozených tříd a je sdíleno různými odvozenými třídami.