语言

DiscreteObjectKeyFrame 类

定义

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

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)

适用于

另请参阅