DiscreteObjectKeyFrame 类

定义

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

public ref class DiscreteObjectKeyFrame sealed : ObjectKeyFrame
/// [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 DiscreteObjectKeyFrame final : ObjectKeyFrame
/// [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 DiscreteObjectKeyFrame final : ObjectKeyFrame
[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 DiscreteObjectKeyFrame : ObjectKeyFrame
[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 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
属性

Windows 要求

设备系列
Windows 10 (在 10.0.10240.0 中引入)
API contract
Windows.Foundation.UniversalApiContract (在 v1.0 中引入)

注解

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

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

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

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

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

构造函数

DiscreteObjectKeyFrame()

初始化 DiscreteObjectKeyFrame 类的新实例。

属性

Dispatcher

获取与此对象关联的 CoreDispatcherCoreDispatcher 表示可以访问 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)

适用于

另请参阅