Partilhar via


ColorAnimation.By Propriedade

Definição

Obtém ou define a quantidade total pela qual a animação altera seu valor inicial.

public:
 property IReference<Color> ^ By { IReference<Color> ^ get(); void set(IReference<Color> ^ value); };
IReference<Color> By();

void By(IReference<Color> value);
public System.Nullable<Color> By { get; set; }
var iReference = colorAnimation.by;
colorAnimation.by = iReference;
Public Property By As Nullable(Of Color)
<ColorAnimation By="colorString"/>
-or-
<ColorAnimation By="referenceToColor"/>
- or -
<ColorAnimation>
  <ColorAnimation.By>
    <Color>colorString</Color>
  </ColorAnimation.By>
</ColorAnimation>

Valor da propriedade

A quantidade total pela qual a animação altera seu valor inicial. O padrão é nulo.

Se você estiver programando usando C# ou Visual Basic, o tipo dessa propriedade será projetado como Cor?(uma Cor anulável).

Exemplos

<StackPanel>
    <StackPanel.Resources>
        <Storyboard x:Name="colorStoryboard">
            <ColorAnimation Storyboard.TargetName="mySolidColorBrush"
                            Storyboard.TargetProperty="Color" Duration="0:0:4" 
                            By="#0000FF"/>
        </Storyboard>
    </StackPanel.Resources>

    <StackPanel Orientation="Horizontal">
        <Button Content="Animate color" Click="Start_Animation"/>
        <Rectangle Height="100" Width="300" Margin="12,0">
            <Rectangle.Fill>
                <SolidColorBrush x:Name="mySolidColorBrush" Color="#00FF00" />
            </Rectangle.Fill>
        </Rectangle>
    </StackPanel>
</StackPanel>
private void Start_Animation(object sender, RoutedEventArgs e)
{
    colorStoryboard.Begin();
}

Comentários

Quando você usa a propriedade By para animar uma cor pela quantidade especificada, o valor hexadecimal da propriedade By é adicionado ao valor hexadecimal da cor inicial. Se você estiver usando cores nomeadas, lembre-se de que o nome representa apenas um valor rgb e esse valor é o que está sendo adicionado.

Por exemplo, se você animar #FF0000 (vermelho) por #0000FF (azul), a cor final será #FF00FF (Fúcsia). No entanto, se você animar #FF00FF (Fúcsia) por #0000FF (Azul), a cor final ainda será #FF00FF (Fúcsia).

Você pode definir a propriedade By sozinha ou com a propriedade From . Se você definir as propriedades By e To , o valor Por será ignorado e a animação terminará com o valor Para.

  • Somente por: A animação progride do valor base da propriedade que está sendo animada ou do valor de saída de uma animação anterior para a soma desse valor e o valor especificado pela propriedade By .
  • De e Por: A animação progride do valor especificado pela propriedade From para o valor especificado pela soma das propriedades From e By .

Aplica-se a