SplineColorKeyFrame Kelas

Definisi

Menganimasikan dari nilai Warna bingkai kunci sebelumnya ke Nilainya sendiri menggunakan interpolasi yang di-splin.

public ref class SplineColorKeyFrame sealed : ColorKeyFrame
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class SplineColorKeyFrame final : ColorKeyFrame
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class SplineColorKeyFrame final : ColorKeyFrame
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class SplineColorKeyFrame : ColorKeyFrame
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class SplineColorKeyFrame : ColorKeyFrame
Public NotInheritable Class SplineColorKeyFrame
Inherits ColorKeyFrame
<SplineColorKeyFrame .../>
Warisan
Object Platform::Object IInspectable DependencyObject ColorKeyFrame SplineColorKeyFrame
Atribut

Persyaratan Windows

Rangkaian perangkat
Windows 10 (diperkenalkan dalam 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v1.0)

Contoh

Contoh XAML ini menggunakan kelas ColorAnimationUsingKeyFrames untuk menganimasikan properti Latar BelakangStackPanel. Animasi ini menggunakan tiga bingkai kunci dengan cara berikut:

  1. Selama dua detik pertama, LinearColorKeyFrame secara bertahap mengubah warna dari hijau menjadi merah. Bingkai kunci linier seperti LinearColorKeyFrame membuat transisi linier yang halus antar nilai.
  2. Selama akhir paruh kedua berikutnya, DiscreteColorKeyFrame dengan cepat mengubah warna dari merah ke kuning. Bingkai kunci diskrit seperti DiscreteColorKeyFrame membuat perubahan mendadak antar nilai; animasi terjadi dengan cepat dan tidak memiliki interpolasi antara nilai sama sekali.
  3. Selama dua detik terakhir, SplineColorKeyFrame mengubah warna lagi, kali ini dari kuning kembali ke hijau. Bingkai kunci spline seperti SplineColorKeyFrame membuat transisi variabel antar nilai sesuai dengan nilai properti KeySpline . KeySpline menyediakan cara untuk mengubah hubungan waktu versus nilai selama durasi animasi menjadi nonlinear, dan khususnya hubungan bisa menjadi kurva yang akan sulit dihasilkan dengan bingkai kunci individual. Dalam contoh ini, perubahan warna dimulai perlahan dan mempercepat secara eksponensial menuju akhir segmen waktu.
<StackPanel x:Name="myStackPanel" Background="Red"
Loaded="Start_Animation">
    <StackPanel.Resources>
        <Storyboard x:Name="colorStoryboard">

            <ColorAnimationUsingKeyFrames Storyboard.TargetName="myStackPanel" 
      Storyboard.TargetProperty="(Panel.Background).(SolidColorBrush.Color)">
                
                <!-- Go from green to red in the first 2 seconds. LinearColorKeyFrame creates
                a smooth, linear animation between values. -->
                <LinearColorKeyFrame Value="Blue" KeyTime="00:00:02" />

                <!-- In the next half second, go to yellow. DiscreteColorKeyFrame creates a 
                sudden jump between values. -->
                <DiscreteColorKeyFrame Value="Yellow" KeyTime="00:00:2.5" />

                <!-- In the final 2 seconds of the animation, go from yellow back to green. SplineColorKeyFrame 
                creates a variable transition between values depending on the KeySpline property. In this example,
                the animation starts off slow but toward the end of the time segment, it speeds up exponentially.-->
                <SplineColorKeyFrame Value="Green" KeyTime="00:00:4.5" KeySpline="0.6,0.0 0.9,0.00" />

            </ColorAnimationUsingKeyFrames>
        </Storyboard>
    </StackPanel.Resources>
</StackPanel>
// Start the animation when the object loads
private void Start_Animation(object sender, RoutedEventArgs e)
{
    colorStoryboard.Begin();
}
' Start the animation when the object loads
Private Sub Start_Animation(ByVal sender As Object, ByVal e As EventArgs)
    colorStoryboard.Begin()
End Sub

Keterangan

Animasi bingkai kunci mengizinkan lebih dari satu nilai target yang tercapai pada titik di sepanjang garis waktu animasi. Dengan kata lain, setiap bingkai kunci dapat menentukan nilai perantara yang berbeda, dan bingkai kunci terakhir yang dicapai adalah nilai animasi akhir. Dengan menentukan beberapa nilai untuk dianimasikan, Anda dapat membuat animasi yang lebih kompleks. Anda dapat mencampur keyframe diskret, linier, dan spline dalam koleksi keyframe yang sama.

Untuk informasi selengkapnya tentang cara menggunakan animasi bingkai kunci, lihat Animasi bingkai kunci dan meringankan animasi fungsi.

Konstruktor

SplineColorKeyFrame()

Menginisialisasi instans baru kelas SplineColorKeyFrame .

Properti

Dispatcher

Mendapatkan CoreDispatcher yang dikaitkan dengan objek ini. CoreDispatcher mewakili fasilitas yang dapat mengakses DependencyObject pada utas UI bahkan jika kode dimulai oleh utas non-UI.

(Diperoleh dari DependencyObject)
KeySpline

Mendapatkan atau mengatur dua titik kontrol yang menentukan kemajuan animasi untuk bingkai kunci ini.

KeySplineProperty

Mengidentifikasi properti dependensi KeySpline .

KeyTime

Mendapatkan atau mengatur waktu di mana Nilai target bingkai kunci harus dicapai.

(Diperoleh dari ColorKeyFrame)
Value

Mendapatkan atau mengatur nilai target bingkai kunci.

(Diperoleh dari ColorKeyFrame)

Metode

ClearValue(DependencyProperty)

Menghapus nilai lokal properti dependensi.

(Diperoleh dari DependencyObject)
GetAnimationBaseValue(DependencyProperty)

Mengembalikan nilai dasar apa pun yang ditetapkan untuk properti dependensi, yang akan berlaku dalam kasus di mana animasi tidak aktif.

(Diperoleh dari DependencyObject)
GetValue(DependencyProperty)

Mengembalikan nilai efektif properti dependensi saat ini dari DependencyObject.

(Diperoleh dari DependencyObject)
ReadLocalValue(DependencyProperty)

Mengembalikan nilai lokal properti dependensi, jika nilai lokal ditetapkan.

(Diperoleh dari DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Mendaftarkan fungsi pemberitahuan untuk mendengarkan perubahan pada DependencyProperty tertentu pada instans DependencyObject ini.

(Diperoleh dari DependencyObject)
SetValue(DependencyProperty, Object)

Mengatur nilai lokal properti dependensi pada DependencyObject.

(Diperoleh dari DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Membatalkan pemberitahuan perubahan yang sebelumnya terdaftar dengan memanggil RegisterPropertyChangedCallback.

(Diperoleh dari DependencyObject)

Berlaku untuk

Lihat juga