Share via


DiscreteObjectKeyFrame 类

定义

使用离散值从上一个关键帧的 Object 值到其自己的 进行动画处理。

public ref class DiscreteObjectKeyFrame sealed : ObjectKeyFrame
/// [Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class DiscreteObjectKeyFrame final : ObjectKeyFrame
[Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class DiscreteObjectKeyFrame : ObjectKeyFrame
Public NotInheritable Class DiscreteObjectKeyFrame
Inherits ObjectKeyFrame
<DiscreteObjectKeyFrame ...>
  <DiscreteObjectKeyFrame.Value>
    objectValue
  </DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame ...>
-or-
</DiscreteObjectKeyFrame Value="objectAsAttribute"...>
继承
Object Platform::Object IInspectable DependencyObject ObjectKeyFrame DiscreteObjectKeyFrame
属性

注解

关键帧动画允许沿动画时间线到达一个点的多个目标值。 换句话说,每个关键帧可以指定一个不同的中间值,并且到达的最后一个关键帧为最终动画值。 通过指定多个值来创建动画,你可以做出更复杂的动画。

DiscreteObjectKeyFrame 是 ObjectAnimationUsingKeyFrames 中允许的唯一关键帧类型。 在动画运行时,没有线性内插或其他内插逻辑可以更改对象值。 旧对象在 KeyTime 处删除,而作为关键帧值的新对象将替换为 KeyTime

在某些情况下,使用 ObjectAnimationUsingKeyFrames 而不是类型化动画非常有用。 以下是其中一些原因:

  • 为视觉状态创建 情节提要 ,并使用 {StaticResource} 标记扩展 引用的值,而不是类型化值之一。 这使你能够从视觉状态引用系统主题资源。
  • int字节 值进行动画处理。
  • 对 UI 定义和视觉状态中使用的结构(如 GridLength)进行动画处理。 无法对结构的属性进行动画处理,但可以使用 DiscreteObjectKeyFrame 和新的 GridLength 交换整个结构值。

有关如何使用关键帧动画的详细信息,请参阅 关键帧动画和缓动函数动画

构造函数

DiscreteObjectKeyFrame()

初始化 DiscreteObjectKeyFrame 类的新实例。

属性

Dispatcher

始终在Windows 应用 SDK应用中返回 null 。 请改用 DispatcherQueue

(继承自 DependencyObject)
DispatcherQueue

DispatcherQueue获取与此对象关联的 。 表示 DispatcherQueue 一个可以在 UI 线程上访问 DependencyObject 的设施,即使代码是由非 UI 线程启动的。

(继承自 DependencyObject)
KeyTime

获取或设置应达到关键帧的目标 的时间。

(继承自 ObjectKeyFrame)
Value

获取或设置关键帧的目标值。

(继承自 ObjectKeyFrame)

方法

ClearValue(DependencyProperty)

清除依赖属性的本地值。

(继承自 DependencyObject)
GetAnimationBaseValue(DependencyProperty)

返回为依赖属性建立的任何基值,该基值适用于动画未处于活动状态的情况。

(继承自 DependencyObject)
GetValue(DependencyProperty)

DependencyObject 返回依赖属性的当前有效值。

(继承自 DependencyObject)
ReadLocalValue(DependencyProperty)

如果设置了本地值,则返回依赖属性的本地值。

(继承自 DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

注册通知函数,用于侦听此 DependencyObject 实例上对特定 DependencyProperty 的更改。

(继承自 DependencyObject)
SetValue(DependencyProperty, Object)

设置 DependencyObject 上依赖属性的本地值。

(继承自 DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

取消以前通过调用 RegisterPropertyChangedCallback 注册的更改通知。

(继承自 DependencyObject)

适用于

另请参阅