語言

MatrixAnimationUsingPath.IsAdditive 屬性

定義

取得或設定一個值,指示目標屬性的當前值是否應該加到該動畫的起始值中。

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

屬性值

true如果目標屬性的當前值應該加到該動畫的起始值中;否則,。 false 預設值為 false。

範例

以下範例使用兩個相似 MatrixAnimationUsingPath 的動畫來製作同一個矩形。 第一個動畫 IsAdditive 的屬性設為 false,因此它總是從 (0,0) 動畫起始值開始動畫的矩形。 第二個動畫的目標值相同(設定 PathGeometry 相同),但其 IsAdditive 屬性設定為 true;因此,它會從動畫套用時矩形的位置來動畫。

<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>

備註

相依財產資訊

Item 價值觀
識別碼欄位 IsAdditiveProperty
元資料屬性設為 true None

Note

這種依賴性質很特殊,因為它的識別碼欄位來自 AnimationTimeline 並被多個派生類別共享。

適用於